OPTIONAL SYNOPSIS string process_string(string str) DESCRIPTION Searches string str for occurrences of a "value by function call", which is an implicit function call surrounded by @@. See "value_by_function_call" in the principles section. The value should contain a string like this: @@function[:filename][|arg|arg]@@ must return a string or else the string which should be processed will be returned unchanged. process_string() does not recurse over returned replacement values. If a function returns another function description, that description will not be replaced. Both the filename and the args are optional. Consecutive function calls can be written adjacent: @@function1@@function2@@ EXAMPLES string foo(string str) { return "ab"+str+"ef"; } void func() { write(process_string("@@foo|cd@@")+"\n"); } The function func() will print out the string "abcdef". BUGS Using process_string() can lead to severe security problems. HISTORY Because of the security problems, process_string() is an optional efun since 3.2.1@34 LDMud 3.3.160 removed the undocumented 'feature' that a function call declaration could be terminated by a space. In turn this now allows the use of arguments with spaces. SEE ALSO notify_fail(E), closures(LPC), get_bb_uid(M)