Go to the documentation of this file.   32 #define PROXY(o) (o->this)    33 #define MIN(i,j) (i < j ? i : j)    34 #if !constant(steamtools.get_caller)     35 #define CALLER Caller.get_caller(this_object(), backtrace())    37 #define CALLER steamtools.get_caller(this_object())    39 #define MCALLER (CALLER == master() ? PREVCALLER : CALLER)    41 #define PREVCALLER function_object(backtrace()[-3][2])    43 #define CALLINGFUNCTION function_name(backtrace()[-2][2])    45 #define CALLERCLASS backtrace()[-2][0]    47 #define CALLERPROGRAM object_program(function_object(backtrace()[-2][2]))    49 #define MESSAGE(s, args...) write("["+Calendar.Second(time())->format_time()+"] "+s+"\n", args)    50 #define MESSAGE_START(s, args...) write("["+Calendar.Second(time())->format_time()+"] "+s, args)    51 #define MESSAGE_APPEND(s, args...) write(s, args)    52 #define MESSAGE_END(s, args...) write(s+"\n", args)    54 #define WARN(s, args...) werror(s+"\n", args)    57 #define LOG(s) werror(s+"\n")    62 #define FATAL(s, args...) werror("-------------------------------\n"+ctime(time())+s+"\n", args)    64 #define _LOG(s) werror("("+this_object()->get_object_id()+") "+s+"\n")    67 #define TRACE(s) werror("["+master()->stupid_describe(this_object())+"]"+s+"\n")    72 #define LOG_DB(s) catch {_Server->get_module("log")->log_text("database",s); }    78 #define SECURITY_LOG(s, args...) if (1) {if (_Server->get_module("log")) _Server->get_module("log")->log_security(s, args);}    80 #define SECURITY_LOG(s, args...)    83 #define LOG_BOOT(s) catch { _LOG->log_boot(s); }    85 #define LOG_EVENT(s) catch{_LOG->log_event(s);}    87 #define LOG_ERR(s) catch{_LOG->log_error(s);}    89 #define LOG_DEBUG(s) catch{_Server->get_module("log")->log_debug(s);}    90 #define PRINT_BT(c) ("Error: " + c[0] + "\n" + master()->describe_backtrace(c[1]))    92 #define THROW(c, e) throw( ({ c, backtrace(), e}))    93 #define IS_SOCKET(o) (master()->is_socket(o))    95 #define NIL (([])[""])    97 #define CONTENTOF(x) _FILEPATH->path_to_object(x)->get_content()   100 #define T_STRING  "string"   101 #define T_FLOAT   "float"   102 #define T_OBJECT  "object"   103 #define T_MAPPING "mapping"   104 #define T_ARRAY   "array"   108 #define IS_PROXY(o) (object_program(o) == (program)"/kernel/proxy.pike" || object_program(o) == (program)"/kernel/proxy")   112 #define URLTYPE_HTTP     2   113 #define URLTYPE_RELOC    3   114 #define URLTYPE_DBO      4   115 #define URLTYPE_DBFT     5   117 #define MAX_BUFLEN       65504