pike.git / src / program.h

version» Context lines:

pike.git/src/program.h:514:   #define PROGRAM_PASS_1_DONE 8      /* Program will be destructed as soon at it runs out of references.    * Normally only used for mutex lock keys and similar    */   #define PROGRAM_DESTRUCT_IMMEDIATE 0x10      /* Self explanatory, automatically detected */   #define PROGRAM_HAS_C_METHODS 0x20    - /* Objects created from this program are constant and shareable */ + /* Objects created from this program are immutable and shareable. */   #define PROGRAM_CONSTANT 0x40      /* Objects have pointers to the parent object. Use LOW_PARENT_INFO or -  * PARENT_INFO to extract it. */ +  * PARENT_INFO to extract it. +  * Note that this is also set by #pragma save_parent. */   #define PROGRAM_USES_PARENT 0x80      /* Objects should not be destructed even when they only have weak    * references left. */   #define PROGRAM_NO_WEAK_FREE 0x100      /* Objects should not be destructed by f_destruct(). */   #define PROGRAM_NO_EXPLICIT_DESTRUCT 0x200      /* Program is in an inconsistant state */   #define PROGRAM_AVOID_CHECK 0x400      /* Program has not yet been used for compilation */   #define PROGRAM_VIRGIN 0x800      /* Don't allow the program to be inherited or cloned if there's no -  * parent object. Might only be set if PROGRAM_USES_PARENT is. */ +  * parent object. May only be set if PROGRAM_USES_PARENT is. +  * Set this if the parent pointer is actually used by the program. */   #define PROGRAM_NEEDS_PARENT 0x1000      /* Program has code to be executed when it's destructed. This causes    * the gc to consider objects of this program to be "live" and will    * take care to ensure a good destruct sequence so that other    * referenced things are intact as far as possible when the object is    * destructed. See the blurb near the top of gc.c for further    * discussion.    *    * This flag gets set automatically when an event handler that might