ldmud-3.2.9/doc/
ldmud-3.2.9/doc/efun/
ldmud-3.2.9/mud/
ldmud-3.2.9/mud/heaven7/
ldmud-3.2.9/mud/heaven7/lib/
ldmud-3.2.9/mud/lp-245/
ldmud-3.2.9/mud/lp-245/banish/
ldmud-3.2.9/mud/lp-245/doc/
ldmud-3.2.9/mud/lp-245/doc/examples/
ldmud-3.2.9/mud/lp-245/doc/sefun/
ldmud-3.2.9/mud/lp-245/log/
ldmud-3.2.9/mud/lp-245/obj/Go/
ldmud-3.2.9/mud/lp-245/players/lars/
ldmud-3.2.9/mud/lp-245/room/death/
ldmud-3.2.9/mud/lp-245/room/maze1/
ldmud-3.2.9/mud/lp-245/room/sub/
ldmud-3.2.9/mud/lp-245/secure/
ldmud-3.2.9/mud/morgengrauen/
ldmud-3.2.9/mud/morgengrauen/lib/
ldmud-3.2.9/mud/sticklib/
ldmud-3.2.9/mud/sticklib/src/
ldmud-3.2.9/mudlib/uni-crasher/
ldmud-3.2.9/pkg/
ldmud-3.2.9/pkg/debugger/
ldmud-3.2.9/pkg/diff/
ldmud-3.2.9/pkg/misc/
ldmud-3.2.9/src/autoconf/
ldmud-3.2.9/src/bugs/
ldmud-3.2.9/src/bugs/MudCompress/
ldmud-3.2.9/src/bugs/b-020916-files/
ldmud-3.2.9/src/bugs/doomdark/
ldmud-3.2.9/src/bugs/ferrycode/ferry/
ldmud-3.2.9/src/bugs/ferrycode/obj/
ldmud-3.2.9/src/bugs/psql/
ldmud-3.2.9/src/done/
ldmud-3.2.9/src/done/order_alist/
ldmud-3.2.9/src/done/order_alist/obj/
ldmud-3.2.9/src/done/order_alist/room/
ldmud-3.2.9/src/gcc/
ldmud-3.2.9/src/gcc/2.7.0/
ldmud-3.2.9/src/gcc/2.7.1/
ldmud-3.2.9/src/hosts/
ldmud-3.2.9/src/hosts/GnuWin32/
ldmud-3.2.9/src/hosts/amiga/NetIncl/
ldmud-3.2.9/src/hosts/amiga/NetIncl/netinet/
ldmud-3.2.9/src/hosts/amiga/NetIncl/sys/
ldmud-3.2.9/src/hosts/i386/
ldmud-3.2.9/src/hosts/msdos/byacc/
ldmud-3.2.9/src/hosts/msdos/doc/
ldmud-3.2.9/src/hosts/os2/
ldmud-3.2.9/src/hosts/win32/
ldmud-3.2.9/src/util/
ldmud-3.2.9/src/util/erq/
ldmud-3.2.9/src/util/indent/hosts/next/
ldmud-3.2.9/src/util/xerq/
ldmud-3.2.9/src/util/xerq/lpc/
ldmud-3.2.9/src/util/xerq/lpc/www/
SYNOPSIS
        #include <trace.h>

        int trace(int traceflags)

DESCRIPTION
        Sets the trace flags and returns the old trace flags. When
        tracing is on, a lot of information is printed during
        execution and too much output can crash your connection or
        even the whole driver.

        Tracing is done on a per-connection basis: each interactive(!)
        user may specifiy their own tracelevel and -prefix. Each gets the
        traceoutput for just the code executed during the evaluation
        of the commands he entered.

        The trace bits are:

          TRACE_NOTHING     (  0): stop tracing.

          TRACE_CALL        (  1): trace all calls to lfuns.
          TRACE_CALL_OTHER  (  2): trace call_others()s.
          TRACE_RETURN      (  4): trace function returns.
          TRACE_ARGS        (  8): print function arguments and results.
          TRACE_EXEC        ( 16): trace all executed instructions.
          TRACE_HEART_BEAT  ( 32): trace heartbeat code.
          TRACE_APPLY       ( 64): trace driver applies.
          TRACE_OBJNAME     (128): print the object names.

        TRACE_EXEC and TRACE_HEART_BEAT should be avoided as they cause
        massive output! TRACE_OBJNAME should be avoided when you know
        what you trace.


        The master-lfun valid_trace() is called with ("trace", traceflags)
        as argument to verify the use of this efun.

EXAMPLE
        object obj;
        string prefix;
        obj=find_player("wessex");
        prefix=object_name(obj);
        prefix=prefix[1..strlen(prefix)-1]; /* cut off the leading "/" */
        traceprefix(prefix);
          /* From here on, only code in the object "std/player#69"
           * will be traced.
           */
        trace(TRACE_CALL|TRACE_CALL_OTHER|TRACE_RETURN|TRACE_ARGS);
        ...
        trace(TRACE_NOTHING);

HISTORY
        LDMud 3.2.9 passes the <traceflags> argument to the valid_trace()
            apply as well.

SEE ALSO
        traceprefix(E)