7.3 Tracing Methods

  • TraceMethods( oprs ) F

    After the call of TraceMethods with a list oprs of operations, whenever a method of one of the operations in oprs is called the information string used in the installation of the method is printed.

  • UntraceMethods( oprs ) F

    turns the tracing off for all operations in oprs.

    gap> TraceMethods( [ Size ] );
    gap> g:= Group( (1,2,3), (1,2) );;
    gap> Size( g );
    #I  Size: method for a permutation group
    #I  Setter(Size): system setter
    #I  Size: system getter
    #I  Size: system getter
    6
    gap> UntraceMethods( [ Size ] );
    

  • TraceImmediateMethods( flag ) F

    If flag is true, tracing for all immediate methods is turned on. If flag is false it is turned off. (There is no facility to trace specific immediate methods.)

    gap> TraceImmediateMethods( true );
    gap> g:= Group( (1,2,3), (1,2) );;
    #I  immediate: IsFinitelyGeneratedGroup
    gap> Size( g );
    #I  Size: method for a permutation group
    #I  immediate: IsFinitelyGeneratedGroup
    #I  immediate: IsCyclic
    #I  immediate: IsFinitelyGeneratedGroup
    #I  Setter(Size): system setter
    #I  Size: system getter
    #I  immediate: IsPerfectGroup
    #I  Size: system getter
    #I  immediate: IsEmpty
    6
    gap> TraceImmediateMethods( false );
    gap> UntraceMethods( [ Size ] );
    

    This example gives an explanation for the two calls of the ``system getter'' for Size. Namely, there are immediate methods that access the known size of the group. Note that the group g was known to be finitely generated already before the size was computed, the calls of the immediate method for IsFinitelyGeneratedGroup after the call of Size have other arguments than g.

    [Top] [Previous] [Up] [Next] [Index]

    GAP 4 manual
    February 2000