PackageClass Class Reference

#include <PackageClass.hpp>

Inheritance diagram for PackageClass:
[legend]

Public Member Functions

void * operator new (size_t)
 
void * operator new (size_t size, void *ptr)
 
 PackageClass (RexxSource *source)
 
 PackageClass (RESTORETYPE restoreType)
 
void live (size_t)
 
void liveGeneral (int reason)
 
void flatten (RexxEnvelope *)
 
RexxStringgetName ()
 
RexxArraygetSource ()
 
RexxStringgetSourceLine (size_t)
 
RexxIntegergetSourceSize ()
 
RexxStringgetSourceLineRexx (RexxObject *)
 
RexxObjectsetSecurityManager (RexxObject *)
 
RexxDirectorygetClasses ()
 
RexxDirectorygetPublicClasses ()
 
RexxDirectorygetImportedClasses ()
 
RexxDirectorygetMethods ()
 
RexxDirectorygetRoutines ()
 
RexxDirectorygetPublicRoutines ()
 
RexxDirectorygetImportedRoutines ()
 
RexxArraygetImportedPackages ()
 
PackageClassloadPackage (RexxString *name, RexxArray *source)
 
RexxObjectaddPackage (PackageClass *package)
 
RexxClassfindClass (RexxString *name)
 
RexxClassfindClassRexx (RexxString *name)
 
RoutineClassfindRoutine (RexxString *name)
 
RoutineClassfindRoutineRexx (RexxString *name)
 
RexxObjectfindProgramRexx (RexxObject *name)
 
RexxObjectaddRoutine (RexxString *name, RoutineClass *routine)
 
RexxObjectaddPublicRoutine (RexxString *name, RoutineClass *routine)
 
RexxObjectaddClass (RexxString *name, RexxClass *clazz)
 
RexxObjectaddPublicClass (RexxString *name, RexxClass *clazz)
 
RexxObjectloadLibrary (RexxString *name)
 
RexxObjectdigits ()
 
RexxObjectfuzz ()
 
RexxObjectform ()
 
RexxObjecttrace ()
 
PackageClassnewRexx (RexxObject **init_args, size_t argCount, size_t named_argCount)
 
RexxSourcegetSourceObject ()
 
bool isRexxPackage ()
 
RexxObjectgetEncoding ()
 
void setEncoding (RexxObject *e)
 
RexxObjectsetEncodingRexx (RexxObject *e)
 
- Public Member Functions inherited from RexxObject
void * operator new (size_t, RexxClass *)
 
void * operator new (size_t, RexxClass *, RexxObject **, size_t, size_t)
 
void * operator new (size_t size, void *objectPtr)
 
void operator delete (void *, void *)
 
void operator delete (void *)
 
void operator delete (void *, RexxClass *)
 
void operator delete (void *, RexxClass *, RexxObject **, size_t)
 
RexxObjectnewRexx (RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxObjectnewObject ()
 
 operator RexxInternalObject * ()
 
 RexxObject ()
 
 RexxObject (RESTORETYPE restoreType)
 
void initializeNewObject (size_t size, size_t mark, void *vft, RexxBehaviour *b)
 
void initializeNewObject (size_t mark, void *vft, RexxBehaviour *b)
 
virtual ~RexxObject ()
 
virtual RexxObjectdefMethod (RexxString *, RexxMethod *, RexxString *a=OREF_NULL)
 
virtual RexxStringdefaultName ()
 
virtual RexxObjectunknown (RexxString *msg, RexxArray *args, RexxDirectory *named_args)
 
virtual RexxIntegerhasMethod (RexxString *msg)
 
bool hasUninitMethod ()
 
RexxObjectinit ()
 
void uninit ()
 
void live (size_t)
 
void liveGeneral (int reason)
 
void flatten (RexxEnvelope *)
 
RexxObjectcopy ()
 
HashCode hash ()
 
bool truthValue (int)
 
virtual bool logicalValue (logical_t &)
 
virtual bool numberValue (wholenumber_t &result, size_t precision)
 
virtual bool numberValue (wholenumber_t &result)
 
virtual bool unsignedNumberValue (stringsize_t &result, size_t precision)
 
virtual bool unsignedNumberValue (stringsize_t &result)
 
virtual bool doubleValue (double &result)
 
RexxNumberStringnumberString ()
 
RexxIntegerintegerValue (size_t)
 
RexxStringmakeString ()
 
RexxTextmakeText ()
 
void copyIntoTail (RexxCompoundTail *buffer)
 
RexxArraymakeArray ()
 
RexxStringstringValue ()
 
RexxTexttextValue ()
 
RexxStringrequestString ()
 
RexxStringrequestStringNoNOSTRING ()
 
RexxTextrequestText ()
 
RexxIntegerrequestInteger (size_t)
 
bool requestNumber (wholenumber_t &, size_t)
 
bool requestUnsignedNumber (stringsize_t &, size_t)
 
RexxArrayrequestArray ()
 
RexxDirectoryrequestDirectory ()
 
RexxStringrequiredString (RexxString *kind, size_t)
 
RexxStringrequiredString (RexxString *kind, const char *)
 
RexxStringrequiredString ()
 
RexxIntegerrequiredInteger (RexxString *kind, size_t, size_t)
 
wholenumber_t requiredNumber (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
stringsize_t requiredPositive (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
stringsize_t requiredNonNegative (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
bool isEqual (RexxObject *)
 
bool isInstanceOf (RexxClass *)
 
RexxObjectisInstanceOfRexx (RexxClass *)
 
RexxObjectisNilRexx ()
 
RexxMethodinstanceMethod (RexxString *)
 
RexxSupplierinstanceMethods (RexxClass *)
 
RexxMethodinstanceMethodRexx (RexxString *)
 
RexxSupplierinstanceMethodsRexx (RexxClass *)
 
RexxObjectdynamicTargetRexx (RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxStringobjectName ()
 
RexxObjectobjectNameEquals (RexxObject *)
 
RexxClassclassObject ()
 
RexxObjectsetMethod (RexxString *, RexxMethod *, RexxString *a=OREF_NULL)
 
RexxObjectunsetMethod (RexxString *)
 
RexxObjectrequestRexx (RexxString *)
 
RexxMessagestart (RexxObject **, size_t, size_t)
 
RexxMessagestartWith (RexxObject *, RexxArray *, RexxObject **, size_t)
 
RexxObjectsend (RexxObject **, size_t, size_t)
 
RexxObjectsendWith (RexxObject *, RexxArray *, RexxObject **, size_t)
 
RexxMessagestartCommon (RexxObject *message, RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxStringoref ()
 
RexxObjectpmdict ()
 
RexxObjectrun (RexxObject **, size_t, size_t)
 
bool messageSend (RexxString *, RexxObject **, size_t, size_t, ProtectedObject &, bool processUnknown=true, bool dynamicTarget=true)
 
bool messageSend (RexxString *, RexxObject **, size_t, size_t, RexxObject *, ProtectedObject &, bool processUnknown=true, bool dynamicTarget=true)
 
RexxMethodcheckPrivate (RexxMethod *, RexxErrorCodes &)
 
RexxMethodcheckPackage (RexxMethod *, RexxErrorCodes &)
 
void processUnknown (RexxErrorCodes, RexxString *, RexxObject **, size_t, size_t, ProtectedObject &)
 
void processProtectedMethod (RexxString *, RexxMethod *, RexxObject **, size_t, size_t, ProtectedObject &)
 
void sendMessage (RexxString *, RexxArray *, RexxDirectory *, ProtectedObject &)
 
void sendMessage (RexxString *message, RexxObject **args, size_t argCount, size_t named_argCount, ProtectedObject &result)
 
void sendMessage (RexxString *message, ProtectedObject &result)
 
void sendMessage (RexxString *message, RexxObject *argument1, ProtectedObject &result)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
RexxObjectsendMessage (RexxString *, RexxArray *, RexxDirectory *=OREF_NULL)
 
RexxObjectsendMessage (RexxString *message, RexxObject **args, size_t argCount, size_t named_argCount)
 
RexxObjectsendMessage (RexxString *message)
 
RexxObjectsendMessage (RexxString *message, RexxObject *argument1)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectdefMethods (RexxDirectory *)
 
void setObjectVariable (RexxString *, RexxObject *, RexxObject *)
 
RexxObjectgetObjectVariable (RexxString *)
 
RexxObjectgetObjectVariable (RexxString *, RexxObject *)
 
void addObjectVariables (RexxVariableDictionary *)
 
void copyObjectVariables (RexxObject *newObject)
 
RexxObjectsuperScope (RexxObject *)
 
RexxMethodsuperMethod (RexxString *, RexxObject *)
 
RexxObjectmdict ()
 
RexxObjectsetMdict (RexxObject *)
 
RexxBehaviourbehaviourObject ()
 
const char * idString ()
 
RexxStringid ()
 
RexxMethodmethodLookup (RexxString *name)
 
RexxVariableDictionarygetObjectVariables (RexxObject *)
 
void guardOn (RexxActivity *activity, RexxObject *scope)
 
void guardOff (RexxActivity *activity, RexxObject *scope)
 
RexxObjectequal (RexxObject *)
 
RexxObjectnotEqual (RexxObject *other)
 
RexxObjectstrictEqual (RexxObject *)
 
RexxObjectstrictNotEqual (RexxObject *other)
 
RexxIntegeridentityHashRexx ()
 
RexxObjecthashCode ()
 
RexxStringstringRexx ()
 
RexxStringconcatRexx (RexxObject *)
 
RexxStringconcatBlank (RexxObject *)
 
RexxObjectmakeStringRexx ()
 
RexxObjectmakeArrayRexx ()
 
RexxStringdefaultNameRexx ()
 
RexxObjectcopyRexx ()
 
RexxObjectunknownRexx (RexxString *, RexxArray *, RexxObject **, size_t)
 
RexxObjecthasMethodRexx (RexxString *)
 
void * getCSelf ()
 
void * getCSelf (RexxObject *scope)
 
bool equalValue (RexxObject *other)
 
virtual wholenumber_t compareTo (RexxObject *)
 
 koper (operator_plus) koper(operator_minus) koper(operator_multiply) koper(operator_divide) koper(operator_integerDivide) koper(operator_remainder) koper(operator_power) koper(operator_abuttal) koper(operator_concat) koper(operator_concatBlank) koper(operator_equal) koper(operator_notEqual) koper(operator_isGreaterThan) koper(operator_isBackslashGreaterThan) koper(operator_isLessThan) koper(operator_isBackslashLessThan) koper(operator_isGreaterOrEqual) koper(operator_isLessOrEqual) koper(operator_strictEqual) koper(operator_strictNotEqual) koper(operator_strictGreaterThan) koper(operator_strictBackslashGreaterThan) koper(operator_strictLessThan) koper(operator_strictBackslashLessThan) koper(operator_strictGreaterOrEqual) koper(operator_strictLessOrEqual) koper(operator_lessThanGreaterThan) koper(operator_greaterThanLessThan) koper(operator_and) koper(operator_or) koper(operator_xor) koper(operator_not) RexxVariableDictionary *objectVariables
 
- Public Member Functions inherited from RexxInternalObject
void * operator new (size_t, RexxClass *)
 
void * operator new (size_t, RexxClass *, RexxObject **, size_t, size_t)
 
void * operator new (size_t size, void *ptr)
 
void operator delete (void *)
 
void operator delete (void *p, void *ptr)
 
 RexxInternalObject ()
 
 RexxInternalObject (RESTORETYPE restoreType)
 
virtual ~RexxInternalObject ()
 
 operator RexxObject * ()
 
size_t getObjectSize ()
 
void setObjectSize (size_t s)
 
size_t getObjectDataSize ()
 
void * getObjectDataSpace ()
 
void clearObject ()
 
void clearObject (size_t l)
 
void setVirtualFunctions (void *t)
 
void setInitHeader (size_t s, size_t markword)
 
void setInitHeader (size_t markword)
 
void setObjectLive (size_t markword)
 
void setHasReferences ()
 
void setHasNoReferences ()
 
bool hasReferences ()
 
bool hasNoReferences ()
 
void setPrimitive ()
 
void setNonPrimitive ()
 
bool isPrimitive ()
 
bool isNonPrimitive ()
 
void setInRexxPackage ()
 
bool isInRexxPackage ()
 
bool isObjectMarked (size_t markword)
 
void setObjectMark (size_t markword)
 
void clearObjectMark ()
 
bool isObjectLive (size_t mark)
 
bool isObjectDead (size_t mark)
 
bool isOldSpace ()
 
bool isNewSpace ()
 
void setNewSpace ()
 
void setOldSpace ()
 
void makeProxiedObject ()
 
bool isProxyObject ()
 
bool isSubClassOrEnhanced ()
 
bool isBaseClass ()
 
size_t getObjectTypeNumber ()
 
RexxBehaviourgetObjectType ()
 
bool isObjectType (RexxBehaviour *b)
 
bool isObjectType (size_t t)
 
bool isSameType (RexxInternalObject *o)
 
void setBehaviour (RexxBehaviour *b)
 
virtual RexxObjectmakeProxy (RexxEnvelope *)
 
virtual RexxObjectevaluate (RexxActivation *, RexxExpressionStack *)
 
virtual RexxObjectgetValue (RexxActivation *)
 
virtual RexxObjectgetValue (RexxVariableDictionary *)
 
virtual RexxObjectgetRealValue (RexxActivation *)
 
virtual RexxObjectgetRealValue (RexxVariableDictionary *)
 
virtual HashCode getHashValue ()
 
HashCode identityHash ()
 
virtual RexxStringprimitiveMakeString ()
 
virtual RexxTextprimitiveMakeText ()
 
virtual RexxObjectdynamicTarget (RexxObject **arguments, size_t count, size_t named_count)
 
void hasUninit ()
 
void removedUninit ()
 
void printObject ()
 
RexxObjectclone ()
 
- Public Member Functions inherited from RexxVirtualBase
virtual RexxObjectunflatten (RexxEnvelope *)
 

Static Public Member Functions

static void createInstance ()
 
- Static Public Member Functions inherited from RexxObject
static void decodeMessageName (RexxObject *target, RexxObject *message, RexxString *&messageName, RexxObject *&startScope)
 
static void createInstance ()
 
- Static Public Member Functions inherited from RexxInternalObject
static size_t getObjectHeaderSize ()
 

Static Public Attributes

static RexxClassclassInstance = OREF_NULL
 
- Static Public Attributes inherited from RexxObject
static PCPPM operatorMethods []
 
static RexxClassclassInstance = OREF_NULL
 

Protected Attributes

RexxSourcesource
 
RexxObjectencoding
 

Additional Inherited Members

- Public Attributes inherited from RexxInternalObject
ObjectHeader header
 
RexxBehaviourbehaviour
 
- Protected Member Functions inherited from RexxVirtualBase
virtual ~RexxVirtualBase ()
 
virtual void baseVirtual ()
 

Detailed Description

Definition at line 48 of file PackageClass.hpp.

Constructor & Destructor Documentation

◆ PackageClass() [1/2]

PackageClass::PackageClass ( RexxSource source)

Definition at line 78 of file PackageClass.cpp.

References OrefSet, and source.

◆ PackageClass() [2/2]

PackageClass::PackageClass ( RESTORETYPE  restoreType)
inline

Definition at line 54 of file PackageClass.hpp.

Member Function Documentation

◆ addClass()

RexxObject * PackageClass::addClass ( RexxString name,
RexxClass clazz 
)

Add a class to this package's class list.

Parameters
clazzThe class to add.
Returns
The target package object.

Definition at line 434 of file PackageClass.cpp.

References RexxSource::addInstalledClass(), classArgument(), source, stringArgument(), and TheClassClass.

Referenced by RexxMemory::createImage().

◆ addPackage()

RexxObject * PackageClass::addPackage ( PackageClass package)

Load a package in a source context.

Parameters
nameThe target package name.
Returns
The loaded package object.

Definition at line 385 of file PackageClass.cpp.

References RexxSource::addPackage(), classArgument(), source, and ThePackageClass.

Referenced by RexxMemory::createImage().

◆ addPublicClass()

RexxObject * PackageClass::addPublicClass ( RexxString name,
RexxClass clazz 
)

Add a class to this package's public class list.

Parameters
clazzThe class to add.
Returns
The target package object.

Definition at line 451 of file PackageClass.cpp.

References RexxSource::addInstalledClass(), classArgument(), source, stringArgument(), and TheClassClass.

Referenced by RexxMemory::createImage().

◆ addPublicRoutine()

RexxObject * PackageClass::addPublicRoutine ( RexxString name,
RoutineClass routine 
)

Add a routine to this package's public routine list.

Parameters
routineThe routine to add.
Returns
The target package object.

Definition at line 417 of file PackageClass.cpp.

References RexxSource::addInstalledRoutine(), classArgument(), source, stringArgument(), and TheRoutineClass.

Referenced by RexxMemory::createImage().

◆ addRoutine()

RexxObject * PackageClass::addRoutine ( RexxString name,
RoutineClass routine 
)

Add a routine to this package's private routine list.

Parameters
routineThe routine to add.
Returns
The target package object.

Definition at line 400 of file PackageClass.cpp.

References RexxSource::addInstalledRoutine(), classArgument(), source, stringArgument(), and TheRoutineClass.

Referenced by RexxMemory::createImage().

◆ createInstance()

void PackageClass::createInstance ( )
static

Create initial class object at bootstrap time.

Definition at line 62 of file PackageClass.cpp.

References CLASS_CREATE.

Referenced by RexxMemory::createImage().

◆ digits()

RexxObject * PackageClass::digits ( )

Return the package-defined digits setting

Returns
The digits setting defined for this package.

Definition at line 649 of file PackageClass.cpp.

References RexxSource::getDigits(), new_integer(), and source.

Referenced by RexxMemory::createImage().

◆ findClass()

RexxClass * PackageClass::findClass ( RexxString name)

Resolve a class in the context of a package.

Parameters
nameThe required class name.
Returns
The resolved class object.

Definition at line 468 of file PackageClass.cpp.

References RexxSource::findClass(), RexxObject::isInstanceOf(), OREF_NULL, source, and TheClassClass.

◆ findClassRexx()

RexxClass * PackageClass::findClassRexx ( RexxString name)

Resolve a class in the context of a package.

Parameters
nameThe required class name.
Returns
The resolved class object.

Definition at line 487 of file PackageClass.cpp.

References RexxSource::findClass(), OREF_NULL, source, stringArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ findProgramRexx()

RexxObject * PackageClass::findProgramRexx ( RexxObject name)

Locate a program using the target package context.

Parameters
nameThe target name.
Returns
The fully resolved filename, or .nil if no file was found.

Definition at line 538 of file PackageClass.cpp.

References ActivityManager::currentActivity, OREF_NULL, RexxActivity::resolveProgramName(), stringArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ findRoutine()

RoutineClass * PackageClass::findRoutine ( RexxString name)

Resolve a routine in the context of a package.

Parameters
nameThe required routine name.
Returns
The resolved routine object.

Definition at line 506 of file PackageClass.cpp.

References RexxSource::findRoutine(), and source.

Referenced by findRoutineRexx().

◆ findRoutineRexx()

RoutineClass * PackageClass::findRoutineRexx ( RexxString name)

Resolve a routine in the context of a package.

Parameters
nameThe required routine name.
Returns
The resolved routine object.

Definition at line 519 of file PackageClass.cpp.

References findRoutine(), OREF_NULL, stringArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ flatten()

void PackageClass::flatten ( RexxEnvelope envelope)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 105 of file PackageClass.cpp.

References cleanUpFlatten, flatten_reference, and setUpFlatten.

◆ form()

RexxObject * PackageClass::form ( )

Return the package-defined default form setting.

Returns
The default form setting.

Definition at line 671 of file PackageClass.cpp.

References Numerics::FORM_SCIENTIFIC, RexxSource::getForm(), and source.

Referenced by RexxMemory::createImage().

◆ fuzz()

RexxObject * PackageClass::fuzz ( )

Return the package-defined default fuzz setting.

Returns
The package defined fuzz setting.

Definition at line 660 of file PackageClass.cpp.

References RexxSource::getFuzz(), new_integer(), and source.

Referenced by RexxMemory::createImage().

◆ getClasses()

RexxDirectory * PackageClass::getClasses ( )

Retrieve all classes defined by this package.

Returns
A directory of all of the classes defined by this package.

Definition at line 185 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getInstalledClasses(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getEncoding()

RexxObject* PackageClass::getEncoding ( )
inline

Definition at line 100 of file PackageClass.hpp.

References encoding.

Referenced by setEncodingRexx().

◆ getImportedClasses()

RexxDirectory * PackageClass::getImportedClasses ( )

Retrieve all of the classes imported into this package from other packages.

Returns
A directory of the imported classes.

Definition at line 228 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getImportedClasses(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getImportedPackages()

RexxArray * PackageClass::getImportedPackages ( )

Get all of the packages that have been added to this package context.

Returns
An array of the added packages.

Definition at line 336 of file PackageClass.cpp.

References RexxSource::getPackages(), RexxList::makeArray(), new_array(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getImportedRoutines()

RexxDirectory * PackageClass::getImportedRoutines ( )

Get the directory of routines that have been imported into to this package form other packages.

Returns
A directory of the imported routines.

Definition at line 293 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getImportedRoutines(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getMethods()

RexxDirectory * PackageClass::getMethods ( )

Get all of the unattached methods defined in this package.

Returns
A directory of the unattached methods.

Definition at line 314 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getMethods(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getName()

RexxString * PackageClass::getName ( )

Get the program name of the package

Returns
The name of the original source package.

Definition at line 124 of file PackageClass.cpp.

References RexxSource::getProgramName(), and source.

Referenced by RexxMemory::createImage().

◆ getPublicClasses()

RexxDirectory * PackageClass::getPublicClasses ( )

Retrieve all public classes defined by this package.

Returns
A directory of the public classes.

Definition at line 206 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getInstalledPublicClasses(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getPublicRoutines()

RexxDirectory * PackageClass::getPublicRoutines ( )

Return a directory of the Public routines defined by this package.

Returns
A directory holding the public routines.

Definition at line 271 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getInstalledPublicRoutines(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getRoutines()

RexxDirectory * PackageClass::getRoutines ( )

Get a list of all routines defined by this package.

Returns
A directory of the routines.

Definition at line 249 of file PackageClass.cpp.

References RexxDirectory::copy(), RexxSource::getInstalledRoutines(), new_directory(), OREF_NULL, and source.

Referenced by RexxMemory::createImage().

◆ getSource()

RexxArray * PackageClass::getSource ( )

Return all of the source lines for the package, as an array.

Returns
The entire array of source lines.

Definition at line 135 of file PackageClass.cpp.

References RexxSource::extractSource(), and source.

Referenced by RexxMemory::createImage().

◆ getSourceLine()

RexxString * PackageClass::getSourceLine ( size_t  n)

Extract a specific line from the program source.

Parameters
nThe line position.
Returns
The extracted line.

Definition at line 148 of file PackageClass.cpp.

References RexxSource::get(), and source.

◆ getSourceLineRexx()

RexxString * PackageClass::getSourceLineRexx ( RexxObject position)

Extract a specific line from the program source.

Parameters
nThe line position.
Returns
The extracted line.

Definition at line 161 of file PackageClass.cpp.

References ARG_ONE, RexxSource::get(), positionArgument(), and source.

Referenced by RexxMemory::createImage().

◆ getSourceObject()

RexxSource* PackageClass::getSourceObject ( )
inline

Definition at line 97 of file PackageClass.hpp.

References source.

Referenced by RexxSource::addPackage().

◆ getSourceSize()

RexxInteger * PackageClass::getSourceSize ( )

Get the number of source lines in the package

Returns
the count of lines

Definition at line 174 of file PackageClass.cpp.

References new_integer(), source, and RexxSource::sourceSize().

Referenced by RexxMemory::createImage().

◆ isRexxPackage()

bool PackageClass::isRexxPackage ( )
inline

Definition at line 98 of file PackageClass.hpp.

References TheRexxPackage.

◆ live()

void PackageClass::live ( size_t  liveMark)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 87 of file PackageClass.cpp.

References memory_mark, and source.

◆ liveGeneral()

void PackageClass::liveGeneral ( int  reason)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 96 of file PackageClass.cpp.

References memory_mark_general, and source.

◆ loadLibrary()

RexxObject * PackageClass::loadLibrary ( RexxString name)

Dynamically load a library package

Parameters
nameThe required package name.
Returns
True if the package was loaded and resolved, false if the package could not be loaded.

Definition at line 633 of file PackageClass.cpp.

References stringArgument().

Referenced by RexxMemory::createImage().

◆ loadPackage()

PackageClass * PackageClass::loadPackage ( RexxString name,
RexxArray s 
)

Load a package in a source context.

Parameters
nameThe target package name.
sThe optional source lines for the package, as an array.
Returns
The loaded package object.

Definition at line 359 of file PackageClass.cpp.

References arrayArgument(), ActivityManager::currentActivity, RexxSource::loadRequires(), OREF_NULL, source, and stringArgument().

Referenced by RexxMemory::createImage().

◆ newRexx()

◆ operator new() [1/2]

void* PackageClass::operator new ( size_t  size,
void *  ptr 
)
inline

Definition at line 52 of file PackageClass.hpp.

◆ operator new() [2/2]

void * PackageClass::operator new ( size_t  size)

Definition at line 68 of file PackageClass.cpp.

References new_object(), and T_Package.

◆ setEncoding()

void PackageClass::setEncoding ( RexxObject e)
inline

Definition at line 101 of file PackageClass.hpp.

References encoding, OREF_NULL, OrefSet, and RexxInternalObject::setHasReferences().

Referenced by setEncodingRexx().

◆ setEncodingRexx()

RexxObject* PackageClass::setEncodingRexx ( RexxObject e)
inline

Definition at line 106 of file PackageClass.hpp.

References getEncoding(), and setEncoding().

Referenced by RexxMemory::createImage().

◆ setSecurityManager()

RexxObject * PackageClass::setSecurityManager ( RexxObject manager)

Set a security manager on a package.

Parameters
managerThe security manager object.
Returns
The security manager object.

Definition at line 557 of file PackageClass.cpp.

References RexxSource::setSecurityManager(), source, and TheTrueObject.

Referenced by RexxMemory::createImage().

◆ trace()

RexxObject * PackageClass::trace ( )

Return the package-defined default trace setting.

Returns
The string-formatted trace setting.

Definition at line 682 of file PackageClass.cpp.

References RexxSource::getTrace(), and source.

Referenced by RexxMemory::createImage().

Member Data Documentation

◆ classInstance

RexxClass * PackageClass::classInstance = OREF_NULL
static

Definition at line 61 of file PackageClass.hpp.

◆ encoding

RexxObject* PackageClass::encoding
protected

Definition at line 115 of file PackageClass.hpp.

Referenced by getEncoding(), and setEncoding().

◆ source


The documentation for this class was generated from the following files: