ObjectObject - Base class for all AST Objects

Description:
This class is the base class from which all other classes in the AST library are derived. It provides all the basic Object behaviour and Object manipulation facilities required throughout the library. There is no Object constructor, however, as Objects on their own are not useful.
Constructor Function:
None.
Inheritance
The Object base class does not inherit from any other class.
Attributes
All Objects have the following attributes:

  • ClassClass: Object class name

  • IDID: Object identification string

  • IdentIdent: Permanent Object identification string

  • NobjectNobject: Number of Objects in class

  • ObjSizeObjSize: The in-memory size of the Object in bytes

  • RefCountRefCount: Count of active Object pointers

  • UseDefsUseDefs: Allow use of default values for Object attributes?
Functions
The following functions may be applied to all Objects:

  • astAnnulastAnnul: Annul a pointer to an Object

  • astBeginastBegin: Begin a new AST context

  • astClearastClear: Clear attribute values for an Object

  • astCloneastClone: Clone a pointer to an Object

  • astCopyastCopy: Copy an Object

  • astDeleteastDelete: Delete an Object

  • astEndastEnd: End an AST context

  • astEscapesastEscapes: Control whether graphical escape sequences are removed

  • astExemptastExempt: Exempt an Object pointer from AST context handling

  • astExportastExport: Export an Object pointer to an outer context

  • astGet$<$X$>$astGetX: Get an attribute value for an Object

  • astHasAttributeastHasAttribute: Test if an Object has a named attribute

  • astImportastImport: Import an Object pointer to the current context

  • astIsA$<$Class$>$astIsAClass: Test class membership

  • astLockastLock: Lock an Object for use by the calling thread

  • astToStringastToString: Create an in-memory serialisation of an Object

  • astSameastSame: Do two AST pointers refer to the same Object?

  • astSetastSet: Set attribute values for an Object

  • astSet$<$X$>$astSetX: Set an attribute value for an Object

  • astShowastShow: Display a textual representation of an Object on standard output

  • astTestastTest: Test if an attribute value is set for an Object

  • astTuneastTune: Set or get an integer AST tuning parameter

  • astTuneCastTuneC: Set or get a character AST tuning parameter

  • astUnlockastUnlock: Unlock an Object for use by other threads

  • astFromStringastFromString: Re-create an Object from an in-memory serialisation

  • astVersionastVersion: Return the verson of the AST library being used.