process_string


       process_string()  -  give  a  string with replaced callde-
       scriptions



SYNOPSIS

       string process_string( string combinestring );



DESCRIPTION

       Processes a string by replacing  specific  syntactic  pat-
       terns  with  what  is  returned when the pattern is inter-
       preted 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 syntac-
       tic 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."

       is replaced by:
           "You are chased by the orc eastward."