71 this->
index = stemIndex;
98 while (variable_name->
getChar(position) !=
'.')
104 stem = variable_name->
extract(0, position + 1);
116 tail = variable_name->
extract(position, length);
125 while (length > 0 && variable_name->
getChar(position) !=
'.')
131 tail = variable_name->
extract(start, position - start);
145 tails->
push(tailPart);
150 if (variable_name->
getChar(position - 1) ==
'.')
152 tails->
push(OREF_NULLSTRING);
167 for (i = 0, count = this->
tailCount; i < count; i++)
183 for (i = 0, count = this->
tailCount; i < count; i++)
203 for (i = 0, count = this->
tailCount; i < count; i++)
362 stem_table->
expose(variable);
388 stem_table->
expose(variable);
419 void * RexxCompoundVariable::operator
new(
size_t size,
446 this->
set(context, string->
upper());
RexxObject * build(RexxString *variable_name, bool direct)
RexxString * REQUEST_STRING(RexxObject *object)
#define memory_mark(oref)
RexxObject * new_object(size_t s)
#define flatten_reference(oref, envel)
#define memory_mark_general(oref)
#define setUpFlatten(type)
static RexxActivity *volatile currentActivity
RexxObject * getLocalCompoundVariableRealValue(RexxString *localstem, size_t index, RexxObject **tail, size_t tailCount)
RexxCompoundElement * getLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
void traceCompoundName(RexxString *stemVar, RexxObject **tails, size_t tailCount, RexxCompoundTail *tail)
RexxStem * getLocalStem(RexxString *name, size_t index)
void assignLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount, RexxObject *value)
void dropLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxObject * evaluateLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxCompoundElement * exposeLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
bool localCompoundVariableExists(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
RexxObject * getLocalCompoundVariableValue(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount)
void setLocalCompoundVariable(RexxString *stemName, size_t index, RexxObject **tail, size_t tailCount, RexxObject *value)
bool tracingIntermediates()
void procedureExpose(RexxActivation *, RexxActivation *, RexxExpressionStack *)
void expose(RexxActivation *, RexxExpressionStack *, RexxVariableDictionary *)
void flatten(RexxEnvelope *)
void upper(RexxActivation *)
RexxObject * evaluate(RexxActivation *, RexxExpressionStack *)
bool exists(RexxActivation *)
RexxCompoundVariable(RexxString *, RexxString *, size_t, RexxQueue *, size_t)
void clearGuard(RexxActivation *)
RexxString * compoundName
void setGuard(RexxActivation *)
void set(RexxActivation *, RexxObject *)
void drop(RexxActivation *)
void liveGeneral(int reason)
RexxObject * getRealValue(RexxVariableDictionary *)
RexxObject * getValue(RexxActivation *context)
void assign(RexxActivation *, RexxExpressionStack *, RexxObject *)
void push(RexxObject *value)
void push(RexxObject *obj)
RexxCompoundElement * exposeCompoundVariable(RexxCompoundTail *name)
void expose(RexxCompoundElement *variable)
RexxString * extract(size_t offset, size_t sublength)
RexxStem * getStem(RexxString *stemName)
void setCompoundVariable(RexxString *stemName, RexxObject **tail, size_t tailCount, RexxObject *value)
RexxObject * getCompoundVariableValue(RexxString *stemName, RexxObject **tail, size_t tailCount)
RexxObject * getCompoundVariableRealValue(RexxString *stem, RexxObject **tail, size_t tailCount)
void dropCompoundVariable(RexxString *stemName, RexxObject **tail, size_t tailCount)
void uninform(RexxActivity *)
void inform(RexxActivity *)