SysInterpreterInstance Class Reference

#include <SysInterpreterInstance.hpp>

Public Member Functions

void live (size_t)
 
void liveGeneral (int)
 
void initialize (InterpreterInstance *i, RexxOption *options)
 
void terminate ()
 
RexxStringresolveProgramName (RexxString *_name, RexxString *_parentDir, RexxString *_parentExtension)
 
void registerCommandHandlers (InterpreterInstance *i)
 
void setupProgram (RexxActivation *activation)
 
void live (size_t)
 
void liveGeneral (int)
 
void initialize (InterpreterInstance *i, RexxOption *options)
 
void terminate ()
 
RexxStringresolveProgramName (RexxString *_name, RexxString *_parentDir, RexxString *_parentExtension)
 
void registerCommandHandlers (InterpreterInstance *i)
 
void setupProgram (RexxActivation *activation)
 

Protected Member Functions

void addSearchExtension (const char *name)
 
void addSearchExtension (const char *name)
 

Protected Attributes

InterpreterInstanceinstance
 
bool externalTraceEnabled
 
char * externalTraceOption
 

Detailed Description

Definition at line 49 of file unix/SysInterpreterInstance.hpp.

Member Function Documentation

◆ addSearchExtension() [1/2]

void SysInterpreterInstance::addSearchExtension ( const char *  name)
protected

Append a system default extension to the extension search order.

Parameters
nameThe name to add.

Definition at line 96 of file unix/SysInterpreterInstance.cpp.

References RexxList::append(), RexxList::hasItem(), instance, new_string(), InterpreterInstance::searchExtensions, and TheFalseObject.

Referenced by initialize().

◆ addSearchExtension() [2/2]

void SysInterpreterInstance::addSearchExtension ( const char *  name)
protected

◆ initialize() [1/2]

void SysInterpreterInstance::initialize ( InterpreterInstance i,
RexxOption options 
)

Initialize the interpreter instance.

Parameters
iOur interpreter instance container.
optionsThe options used to initialize us. We can add additional platform-specific options if we wish.

Definition at line 55 of file unix/SysInterpreterInstance.cpp.

References addSearchExtension(), SystemInterpreter::allocateResultMemory(), externalTraceEnabled, externalTraceOption, and instance.

Referenced by InterpreterInstance::initialize().

◆ initialize() [2/2]

void SysInterpreterInstance::initialize ( InterpreterInstance i,
RexxOption options 
)

◆ live() [1/2]

void SysInterpreterInstance::live ( size_t  )

◆ live() [2/2]

void SysInterpreterInstance::live ( size_t  )

◆ liveGeneral() [1/2]

void SysInterpreterInstance::liveGeneral ( int  )

◆ liveGeneral() [2/2]

void SysInterpreterInstance::liveGeneral ( int  )

◆ registerCommandHandlers() [1/2]

void SysInterpreterInstance::registerCommandHandlers ( InterpreterInstance instance)

Register the standard system command handlers.

Parameters
instanceThe created instance.

Definition at line 801 of file unix/SystemCommands.cpp.

References InterpreterInstance::addCommandHandler(), and systemCommandHandler().

Referenced by InterpreterInstance::initialize().

◆ registerCommandHandlers() [2/2]

void SysInterpreterInstance::registerCommandHandlers ( InterpreterInstance i)

◆ resolveProgramName() [1/2]

RexxString * SysInterpreterInstance::resolveProgramName ( RexxString _name,
RexxString _parentDir,
RexxString _parentExtension 
)

Resolve a program for intial loading or a subroutine call.

Parameters
_nameThe target name. This can be fully qualified, or a simple name without an extension.
_parentDirThe directory of the file of our calling program. The first place we'll look is in the same directory as the program.
_parentExtensionThe extension our calling program has. If there is an extension, we'll use that version first before trying any of the default extensions.
Returns
A string version of the file name, if found. Returns OREF_NULL if the program cannot be found.

Definition at line 89 of file unix/FileSystem.cpp.

References RexxList::firstIndex(), RexxString::getStringData(), RexxList::getValue(), SysFileSystem::hasExtension(), instance, LIST_END, new_string(), RexxList::nextIndex(), OREF_NULL, SysSearchPath::path, InterpreterInstance::searchExtensions, SysFileSystem::searchName(), and InterpreterInstance::searchPath.

Referenced by InterpreterInstance::resolveProgramName().

◆ resolveProgramName() [2/2]

RexxString* SysInterpreterInstance::resolveProgramName ( RexxString _name,
RexxString _parentDir,
RexxString _parentExtension 
)

◆ setupProgram() [1/2]

void SysInterpreterInstance::setupProgram ( RexxActivation activation)

◆ setupProgram() [2/2]

void SysInterpreterInstance::setupProgram ( RexxActivation activation)

◆ terminate() [1/2]

void SysInterpreterInstance::terminate ( )

Terminate the interpreter instance.

Definition at line 85 of file unix/SysInterpreterInstance.cpp.

References externalTraceOption, and SystemInterpreter::releaseResultMemory().

Referenced by InterpreterInstance::terminate().

◆ terminate() [2/2]

void SysInterpreterInstance::terminate ( )

Member Data Documentation

◆ externalTraceEnabled

bool SysInterpreterInstance::externalTraceEnabled
protected

Definition at line 65 of file unix/SysInterpreterInstance.hpp.

Referenced by initialize(), and setupProgram().

◆ externalTraceOption

char * SysInterpreterInstance::externalTraceOption
protected

Definition at line 66 of file unix/SysInterpreterInstance.hpp.

Referenced by initialize(), setupProgram(), and terminate().

◆ instance

InterpreterInstance * SysInterpreterInstance::instance
protected

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