NAME
    process_string - give a string with replaced calldescriptions

    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 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

    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."

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

    BUGS
    May or may not be implemented on many muds, if not implemented it returns the argument string.