ooRexx
4.2.0-source
About: ooRexx (Open Object Rexx) is a free implementation of Object Rexx. Object Rexx is an enhancement of the classic Rexx interpreter; a full-featured programming language with a human-oriented syntax. Fossies Dox: ooRexx-4.2.0-source.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation) 
|
Go to the documentation of this file. 69 this->
index = stemIndex;
96 while (variable_name->
getChar(position) !=
'.')
102 stem = variable_name->
extract(0, position + 1);
114 tail = variable_name->
extract(position, length);
123 while (length > 0 && variable_name->
getChar(position) !=
'.')
129 tail = variable_name->
extract(start, position - start);
143 tails->
push(tailPart);
148 if (variable_name->
getChar(position - 1) ==
'.')
150 tails->
push(OREF_NULLSTRING);
165 for (i = 0, count = this->
tailCount; i < count; i++)
180 for (i = 0, count = this->
tailCount; i < count; i++)
198 for (i = 0, count = this->
tailCount; i < count; i++)
357 stem_table->
expose(variable);
383 stem_table->
expose(variable);
414 void * RexxCompoundVariable::operator
new(
size_t size,
RexxObject * getRealValue(RexxVariableDictionary *)
RexxObject * getLocalCompoundVariableValue(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxCompoundElement * getLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxStem * getStem(RexxString *stemName)
void setLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount, RexxObject *value)
void procedureExpose(RexxActivation *, RexxActivation *, RexxExpressionStack *)
bool localCompoundVariableExists(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
#define memory_mark_general(oref)
void assign(RexxActivation *, RexxExpressionStack *, RexxObject *)
void setGuard(RexxActivation *)
RexxObject * getCompoundVariableValue(RexxString *stemName, RexxObject **tail, size_t tailCount)
RexxCompoundVariable(RexxString *, size_t, RexxQueue *, size_t)
RexxCompoundElement * exposeCompoundVariable(RexxCompoundTail *name)
void assignLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount, RexxObject *value)
void set(RexxActivation *, RexxObject *)
RexxObject * evaluate(RexxActivation *, RexxExpressionStack *)
bool tracingIntermediates()
void expose(RexxActivation *, RexxExpressionStack *, RexxVariableDictionary *)
void setCompoundVariable(RexxString *stemName, RexxObject **tail, size_t tailCount, RexxObject *value)
RexxObject * getValue(RexxActivation *context)
#define flatten_reference(oref, envel)
void traceCompoundName(RexxString *stemVar, RexxObject **tails, size_t tailCount, RexxCompoundTail *tail)
void push(RexxObject *value)
RexxStem * getLocalStem(RexxString *name, size_t index)
RexxString * extract(size_t offset, size_t sublength)
RexxObject * build(RexxString *variable_name, bool direct)
void push(RexxObject *obj)
#define memory_mark(oref)
void drop(RexxActivation *)
RexxObject * getLocalCompoundVariableRealValue(RexxString *localstem, size_t index, RexxObject **tail, size_t tailCount)
void clearGuard(RexxActivation *)
void liveGeneral(int reason)
RexxObject * evaluateLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
#define setUpFlatten(type)
static RexxActivity *volatile currentActivity
void flatten(RexxEnvelope *)
void dropCompoundVariable(RexxString *stemName, RexxObject **tail, size_t tailCount)
void expose(RexxCompoundElement *variable)
void dropLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxObject * getCompoundVariableRealValue(RexxString *stem, RexxObject **tail, size_t tailCount)
void uninform(RexxActivity *)
bool exists(RexxActivation *)
RexxObject * new_object(size_t s)
void inform(RexxActivity *)
RexxCompoundElement * exposeLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)