pike.git / src / gc.c

version» Context lines:

pike.git/src/gc.c:6104:    /* Valid svalue type. */    pop_stack();    }   }      /*! @decl array(mixed) identify_cycle(mixed x)    *! @belongs Pike    *!    *! Identify reference cycles in Pike datastructures.    *! +  *! This function is typically used to identify why certain +  *! datastructures need the @[gc] to run to be freed. +  *! +  *! @param x +  *! Value that is believed to be involved in a reference cycle. +  *!    *! @returns -  *! Returns @expr{UNDEFINED@} if @[x] is not member of a reference cycle. -  *! Otherwise returns an array identifying a cycle with @[x] as the first -  *! element, and where the elements refer to each other in order, and the -  *! last element refers to the first. +  *! @mixed +  *! @type zero +  *! Returns @expr{UNDEFINED@} if @[x] is not member of a reference cycle. +  *! @type array(mixed) +  *! Otherwise returns an array identifying a cycle with @[x] as the first +  *! element, and where the elements refer to each other in order, and the +  *! last element refers to the first. +  *! @endmixed    */   void f_identify_cycle(INT32 args)   {    struct svalue *s;    struct mc_marker *m;    struct svalue *k;       if (args < 1) {    SIMPLE_TOO_FEW_ARGS_ERROR("identify_loops", 1);    }