
process_string(3)      C LIBRARY FUNCTIONS      process_string(3)

NAME
     process_string() - give a string with replaced  calldescrip-
     tions

SYNOPSIS
     string process_string(string combinestring);

DESCRIPTION
     Processes a string by replacing specific syntactic  patterns
     with  what  is returned when the pattern is interpreted as a
     function call description.

     The syntactic patterns are on the form:

       "@@function[:filename][|arg1|arg2....|argN]@@"

     This is interpreted as a call:

        filename->function(arg1, arg2, ....., argN)

     Note that process_string  does  not  recurse  over  returned
     replacement  values. If a function returns another syntactic
     pattern, that description will not be replaced.

     All such occurrences in  'combinestring'  is  processed  and
     replaced  if  the  return  value  is a string. If the return
     value is not a string the pattern will remain unreplaced.

     Note that both object and arguments are marked optional with
     the  brackets  and that the brackets are not included in the
     actual pattern.

SEE ALSO
     process_value(3)

CAVEAT
     This is usually used to support 'value by function call'  in
     the  mudlib.   It is wise to set the effuserid of the object
     to 0 before using  process_value  as  any  function  in  any
     object can be called with almost any arguments.

EXAMPLE
     A string:

       "You  are  chased  by  @@query_the_name:/obj/monster#123@@
     eastward."

Sun Release 4.1           Last change:                          1

process_string(3)      C LIBRARY FUNCTIONS      process_string(3)

     is replaced by:

       "You are chased by the orc eastward."

     Assuming that query_the_name  in  monster#123  returns  "the
     orc".

Sun Release 4.1           Last change:                          2

