#include <StringClass.hpp>
Static Public Member Functions | |
static RexxString * | newString (const char *, sizeB_t bl, sizeC_t cl=-1) |
static RexxString * | rawString (sizeB_t bl, sizeC_t cl=-1) |
static RexxString * | newUpperString (const char *, stringsizeB_t bl, stringsizeC_t cl=-1) |
static RexxString * | newString (double d) |
static RexxString * | newString (double d, size_t precision) |
static RexxString * | newProxy (const char *) |
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 PCPPM | operatorMethods [] |
static RexxClass * | classInstance = OREF_NULL |
Static Public Attributes inherited from RexxObject | |
static PCPPM | operatorMethods [] |
static RexxClass * | classInstance = OREF_NULL |
Protected Attributes | |
HashCode | hashValue |
sizeC_t | clength |
sizeB_t | blength |
RexxNumberString * | NumberString |
size_t | Attributes |
char | stringData [4] |
Additional Inherited Members | |
Public Attributes inherited from RexxInternalObject | |
ObjectHeader | header |
RexxBehaviour * | behaviour |
Protected Member Functions inherited from RexxVirtualBase | |
virtual | ~RexxVirtualBase () |
virtual void | baseVirtual () |
Definition at line 121 of file StringClass.hpp.
|
inline |
Definition at line 124 of file StringClass.hpp.
Referenced by newString(), newUpperString(), and rawString().
|
inline |
Definition at line 125 of file StringClass.hpp.
RexxInteger * RexxString::abbrev | ( | RexxString * | info, |
RexxInteger * | _length | ||
) |
Definition at line 186 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, getCLength(), getStringData(), IntegerOne, IntegerZero, optionalLengthArgument(), size_v, and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::abs | ( | void | ) |
Definition at line 993 of file StringClass.cpp.
References RexxNumberString::abs(), Error_Incorrect_method_string_nonumber, fastNumberString(), OREF_NULL, and reportException().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::andOp | ( | RexxObject * | other | ) |
Definition at line 2102 of file StringClass.cpp.
References ARG_ONE, Error_Logical_value_method, isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, requiredArgument(), TheFalseObject, TheTrueObject, RexxObject::truthValue(), and truthValue().
Referenced by RexxNumberString::andOp(), and RexxMemory::createImage().
RexxString * RexxString::b2x | ( | ) |
Definition at line 550 of file StringClassConversion.cpp.
References StringUtil::chGetSm(), getBLength(), getStringData(), getWritableData(), StringUtil::packNibble(), raw_string(), and StringUtil::validateSet().
Referenced by RexxMemory::createImage().
RexxString * RexxString::bitAnd | ( | RexxString * | string2, |
RexxString * | pad | ||
) |
Definition at line 60 of file StringClassBit.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), optionalPadArgument(), optionalStringArgument(), and raw_string().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxString * RexxString::bitOr | ( | RexxString * | string2, |
RexxString * | pad | ||
) |
Definition at line 131 of file StringClassBit.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), optionalPadArgument(), optionalStringArgument(), and raw_string().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxString * RexxString::bitXor | ( | RexxString * | string2, |
RexxString * | pad | ||
) |
Definition at line 202 of file StringClassBit.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), optionalPadArgument(), optionalStringArgument(), and raw_string().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxString * RexxString::c2d | ( | RexxInteger * | _length | ) |
Definition at line 602 of file StringClassConversion.cpp.
References x2dC2d().
Referenced by RexxMemory::createImage().
RexxString * RexxString::c2x | ( | ) |
Definition at line 213 of file StringClassConversion.cpp.
References getBLength(), getStringData(), getWritableData(), IntToHexDigit(), and raw_string().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessAbbrev | ( | RexxString * | info, |
RexxInteger * | _length | ||
) |
Definition at line 227 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, StringUtil::caselessCompare(), getCLength(), getStringData(), optionalLengthArgument(), size_v, stringArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxString * RexxString::caselessChangeStr | ( | RexxString * | needle, |
RexxString * | newNeedle, | ||
RexxInteger * | countArg | ||
) |
Definition at line 631 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, StringUtil::caselessCountStr(), caselessPos(), getBLength(), getCLength(), getStringData(), getWritableData(), Numerics::MAX_WHOLENUMBER, optionalPositive(), raw_string(), size_v, and stringArgument().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessCompare | ( | RexxString * | other, |
RexxString * | pad | ||
) |
Caseless version of the compare() method.
string2 | The string to compare to. |
pad | The padding character used for length mismatches. |
Definition at line 339 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), IntegerZero, new_integer(), optionalPadArgument(), and stringArgument().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessCompareToRexx | ( | RexxString * | other, |
RexxInteger * | start_, | ||
RexxInteger * | len_ | ||
) |
Do a sorting comparison of two strings.
other | The other compare string. |
start_ | The starting compare position within the target string. |
len_ | The length of the compare substring. |
Definition at line 1181 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, getCLength(), Numerics::maxVal(), optionalLengthArgument(), optionalPositionArgument(), primitiveCaselessCompareTo(), and stringArgument().
Referenced by RexxMemory::createImage().
size_t RexxString::caselessCountStr | ( | RexxString * | ) |
RexxInteger * RexxString::caselessCountStrRexx | ( | RexxString * | needle | ) |
Definition at line 549 of file StringClassMisc.cpp.
References ARG_ONE, StringUtil::caselessCountStr(), getBLength(), getStringData(), new_integer(), and stringArgument().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessEquals | ( | RexxString * | other | ) |
The string equals() method, which does a strict caseless compare with another string object.
other | The other string object. |
Definition at line 1175 of file StringClass.cpp.
References primitiveCaselessIsEqual(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
const char* RexxString::caselessLastPos | ( | const char * | needle, |
sizeB_t | needleLen, | ||
const char * | haystack, | ||
sizeB_t | haystackLen | ||
) |
sizeC_t RexxString::caselessLastPos | ( | RexxString * | needle, |
sizeC_t | _start | ||
) |
Primitive implementation of a caseless lastpos search.
needle | The search needle. |
start | The starting position (origin 1). |
Definition at line 529 of file StringClassMisc.cpp.
References StringUtil::caselessLastPos(), getBLength(), getStringData(), and size_v.
RexxInteger * RexxString::caselessLastPosRexx | ( | RexxString * | needle, |
RexxInteger * | _start, | ||
RexxInteger * | _range | ||
) |
Rexx exported version of the caselessLastPos() method.
needle | The search needle. |
_start | The starting position. |
Definition at line 487 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, StringUtil::caselessLastPos(), getBLength(), getCLength(), getStringData(), new_integer(), optionalLengthArgument(), optionalPositionArgument(), size_v, and stringArgument().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessMatch | ( | RexxInteger * | start_, |
RexxString * | other, | ||
RexxInteger * | offset_, | ||
RexxInteger * | len_ | ||
) |
Test if regions within two strings match.
start_ | The starting compare position within the target string. This must be within the bounds of the string. |
other | The other compare string. |
offset_ | The starting offset of the compare string. This must be within the string bounds. The default start postion is 1. |
len_ | The length of the compare substring. The length and the offset must specify a valid substring of other. If not specified, this defaults to the substring from the offset to the end of the string. |
Definition at line 927 of file StringClassMisc.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, Error_Incorrect_method_length, Error_Incorrect_method_position, getCLength(), optionalLengthArgument(), optionalPositionArgument(), positionArgument(), primitiveCaselessMatch(), reportException(), size_v, stringArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessMatchChar | ( | RexxInteger * | position_, |
RexxString * | matchSet | ||
) |
Compare a single character at a give position against a set of characters to see if any of the characters is a match.
position_ | The character position |
matchSet | The set to compare against. |
Definition at line 1057 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, Error_Incorrect_method_position, getCharC(), getCLength(), positionArgument(), reportException(), size_v, stringArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
sizeC_t RexxString::caselessPos | ( | RexxString * | needle, |
sizeC_t | _start | ||
) |
Do a primitive level pos() search on a string.
needle | The search needle. |
_start | The starting position (origin 0) |
Definition at line 758 of file StringClassMisc.cpp.
References StringUtil::caselessPos(), getBLength(), getStringData(), and size_v.
Referenced by caselessChangeStr().
RexxInteger * RexxString::caselessPosRexx | ( | RexxString * | needle, |
RexxInteger * | pstart, | ||
RexxInteger * | range | ||
) |
Do a caseless search for one string in another.
needle | The search string. |
pstart | The starting position for the search. |
range | A maximum range for the search. |
Definition at line 721 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, StringUtil::caselessPos(), getBLength(), getCLength(), getStringData(), new_integer(), optionalLengthArgument(), optionalPositionArgument(), size_v, and stringArgument().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::caselessWordPos | ( | RexxString * | phrase, |
RexxInteger * | pstart | ||
) |
Perform a caseless wordpos search on a string object.
phrase | The search phrase |
pstart | The starting search position. |
Definition at line 316 of file StringClassWord.cpp.
References StringUtil::caselessWordPos(), getBLength(), and getStringData().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::ceiling | ( | ) |
The String class version of the ceiling method.
Definition at line 1102 of file StringClass.cpp.
References RexxNumberString::ceiling(), Error_Incorrect_method_string_nonumber, fastNumberString(), OREF_NULL, and reportException().
Referenced by RexxMemory::createImage().
RexxString * RexxString::center | ( | RexxInteger * | _length, |
RexxString * | pad | ||
) |
Definition at line 63 of file StringClassSub.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), lengthArgument(), new_string(), optionalPadArgument(), and raw_string().
Referenced by RexxMemory::createImage().
RexxString * RexxString::changeStr | ( | RexxString * | needle, |
RexxString * | newNeedle, | ||
RexxInteger * | countArg | ||
) |
Definition at line 561 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, StringUtil::countStr(), getBLength(), getCLength(), getStringData(), getWritableData(), Numerics::MAX_WHOLENUMBER, optionalPositive(), pos(), raw_string(), size_v, and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
bool RexxString::checkIsASCII | ( | ) |
Definition at line 1699 of file StringClass.cpp.
References getBLength(), getStringData(), isASCII(), isASCIIChecked(), setIsASCII(), and setIsASCIIChecked().
Referenced by isASCIIRexx().
bool RexxString::checkLower | ( | ) |
Definition at line 1732 of file StringClass.cpp.
References getBLength(), getStringData(), setHasLower(), and setUpperOnly().
Referenced by upper().
wholenumber_t RexxString::comp | ( | RexxObject * | other, |
RexxString * | alternativeOperator = OREF_NULL , |
||
RexxInteger ** | alternativeOperatorResultPtr = NULL |
||
) |
Definition at line 594 of file StringClass.cpp.
References ARG_ONE, ch_BLANK, ch_TAB, RexxNumberString::comp(), fastNumberString(), getBLength(), getStringData(), isPolymorphicString(), RexxObject::messageSend(), RexxObject::numberString(), OREF_NULL, REQUEST_STRING(), requiredArgument(), and TheNilObject.
Referenced by RexxNumberString::comp(), equal(), isGreaterOrEqual(), isGreaterThan(), isLessOrEqual(), isLessThan(), and notEqual().
RexxInteger * RexxString::compare | ( | RexxString * | string2, |
RexxString * | pad | ||
) |
Definition at line 256 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), IntegerZero, new_integer(), optionalPadArgument(), and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
virtual |
Wrapper around the compareTo() method for doing sort comparison of strings.
other | The other comparison object |
Reimplemented from RexxObject.
Definition at line 581 of file StringClass.cpp.
References RexxObject::compareTo(), compareToRexx(), RexxInteger::getValue(), RexxInternalObject::isBaseClass(), and OREF_NULL.
Referenced by RexxInteger::compareTo(), and RexxNumberString::compareTo().
RexxInteger * RexxString::compareToRexx | ( | RexxString * | other, |
RexxInteger * | start_, | ||
RexxInteger * | len_ | ||
) |
Do a sorting comparison of two strings.
other | The other compare string. |
start_ | The starting compare position within the target string. |
len_ | The length of the compare substring. |
Definition at line 1094 of file StringClassMisc.cpp.
References ARG_ONE, ARG_THREE, ARG_TWO, getCLength(), Numerics::maxVal(), optionalLengthArgument(), optionalPositionArgument(), primitiveCompareTo(), and stringArgument().
Referenced by compareTo(), and RexxMemory::createImage().
RexxString * RexxString::concat | ( | RexxString * | other | ) |
Definition at line 1406 of file StringClass.cpp.
References getBLength(), getCLength(), getStringData(), getWritableData(), and raw_string().
Referenced by RexxInteger::concat(), RexxSource::constantDirective(), RexxCompoundElement::createCompoundName(), RexxActivity::display(), RexxActivity::displayDebug(), RexxExpressionMessage::makeAssignment(), RexxActivity::messageSubstitution(), and RexxActivation::traceCompoundName().
RexxString * RexxString::concatBlank | ( | RexxObject * | otherObj | ) |
Definition at line 1563 of file StringClass.cpp.
References ARG_ONE, Error_Incorrect_method_nostring, getBLength(), getCLength(), getStringData(), getWritableData(), IntegerOne, isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, raw_string(), reportException(), REQUEST_STRING(), and requiredArgument().
Referenced by RexxNumberString::concatBlank(), RexxObject::concatBlank(), RexxInteger::concatBlank(), and RexxMemory::createImage().
RexxString * RexxString::concatRexx | ( | RexxObject * | otherObj | ) |
Definition at line 1448 of file StringClass.cpp.
References ARG_ONE, Error_Incorrect_method_nostring, getBLength(), getCLength(), getStringData(), getWritableData(), IntegerOne, isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, raw_string(), reportException(), REQUEST_STRING(), and requiredArgument().
Referenced by RexxNumberString::concat(), RexxInteger::concat(), RexxObject::concatRexx(), and RexxMemory::createImage().
RexxString * RexxString::concatToCstring | ( | const char * | other | ) |
Definition at line 1510 of file StringClass.cpp.
References getBLength(), getCLength(), getWritableData(), raw_string(), size_v, and sizeC_v.
Referenced by RexxSource::argList(), RexxSource::attributeDirective(), RexxActivation::command(), RexxClass::defaultName(), RexxObject::defaultName(), RexxDotVariable::evaluate(), RexxInstructionUseStrict::executeNamedArguments(), RexxDotVariable::getValue(), RexxSource::methodDirective(), RexxSource::raiseNew(), RexxObject::requestRexx(), RexxActivation::rexxVariable(), and RexxSource::signalNew().
RexxString * RexxString::concatWith | ( | RexxString * | other, |
char | between | ||
) |
Definition at line 2063 of file StringClass.cpp.
References getBLength(), getCLength(), getStringData(), getWritableData(), and raw_string().
Referenced by RexxInteger::concatBlank(), RexxActivity::display(), and RexxActivity::displayDebug().
RexxString * RexxString::concatWithCstring | ( | const char * | other | ) |
Definition at line 1536 of file StringClass.cpp.
References getBLength(), getCLength(), getWritableData(), raw_string(), size_v, and sizeC_v.
Referenced by RexxSource::argList(), RexxSource::attributeDirective(), RexxActivation::command(), RexxClass::defaultName(), RexxActivity::display(), RexxActivity::displayDebug(), RexxInstructionUseStrict::executeNamedArguments(), RexxNativeActivation::getContextStem(), and RexxSource::methodDirective().
RexxString * RexxString::copies | ( | RexxInteger * | _copies | ) |
Definition at line 394 of file StringClassMisc.cpp.
References ARG_ONE, getBLength(), getStringData(), getWritableData(), raw_string(), requiredArgument(), and RexxObject::requiredNonNegative().
Referenced by RexxMemory::createImage().
Definition at line 455 of file StringClass.cpp.
References getBLength(), and getStringData().
Referenced by StringGet().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 231 of file StringClass.cpp.
References RexxCompoundTail::append(), getBLength(), getStringData(), and size_v.
Referenced by RexxCompoundTail::buildTail(), RexxCompoundTail::buildUnresolvedTail(), and RexxObject::copyIntoTail().
void RexxString::copyToRxstring | ( | RXSTRING & | r | ) |
Copy a string to an RXSTRING, with appropriate allocation of a new buffer if required.
r |
Definition at line 2299 of file StringClass.cpp.
References SystemInterpreter::allocateResultMemory(), getBLength(), getStringData(), size_v, _RXSTRING::strlength, and _RXSTRING::strptr.
RexxInteger * RexxString::countStrRexx | ( | RexxString * | needle | ) |
Definition at line 536 of file StringClassMisc.cpp.
References ARG_ONE, StringUtil::countStr(), getBLength(), getStringData(), new_integer(), and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
static |
Create initial class object at bootstrap time.
Definition at line 67 of file StringClass.cpp.
References CLASS_CREATE.
Referenced by RexxMemory::createImage().
RexxNumberString * RexxString::createNumberString | ( | ) |
Definition at line 417 of file StringClass.cpp.
References getCLength(), getStringData(), isOfClass, new_numberstring(), NumberString, OREF_NULL, OrefSet, RexxObject::requestString(), RexxInternalObject::setHasReferences(), setNonNumeric(), RexxNumberString::setString(), and size_v.
Referenced by fastNumberString().
RexxString * RexxString::d2c | ( | RexxInteger * | _length | ) |
Definition at line 256 of file StringClassConversion.cpp.
References RexxNumberString::d2xD2c(), Error_Incorrect_method_d2c, numberString(), OREF_NULL, and reportException().
Referenced by RexxMemory::createImage().
RexxString * RexxString::d2x | ( | RexxInteger * | _length | ) |
Definition at line 273 of file StringClassConversion.cpp.
References RexxNumberString::d2xD2c(), Error_Incorrect_method_d2x, numberString(), OREF_NULL, and reportException().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::dataType | ( | RexxString * | pType | ) |
Definition at line 442 of file StringClassMisc.cpp.
References ARG_ONE, StringUtil::dataType(), new_string(), optionalOptionArgument(), OREF_NULL, TheTrueObject, and type.
Referenced by RexxMemory::createImage().
RexxString * RexxString::decodeBase64 | ( | ) |
Reverse the effect of an encodebase64 operation, converting a string in Base64 format into a "normal" character string.
Definition at line 128 of file StringClassConversion.cpp.
References Error_Incorrect_method_invbase64, getBLength(), getStringData(), getWritableData(), raw_string(), and reportException().
Referenced by RexxMemory::createImage().
RexxString * RexxString::delstr | ( | RexxInteger * | position, |
RexxInteger * | _length | ||
) |
Definition at line 128 of file StringClassSub.cpp.
References ARG_ONE, ARG_TWO, getCLength(), getStringData(), getWritableData(), optionalLengthArgument(), positionArgument(), raw_string(), and size_v.
Referenced by RexxMemory::createImage().
RexxString * RexxString::delWord | ( | RexxInteger * | position, |
RexxInteger * | plength | ||
) |
Definition at line 62 of file StringClassWord.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), Numerics::MAX_WHOLENUMBER, StringUtil::nextWord(), optionalLengthArgument(), positionArgument(), raw_string(), and StringUtil::skipBlanks().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::divide | ( | RexxObject * | right | ) |
Definition at line 893 of file StringClass.cpp.
References RexxObject::classObject(), RexxNumberString::divide(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), OREF_NULL, reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxObject.
Definition at line 335 of file StringClass.cpp.
References RexxNumberString::doubleValue(), fastNumberString(), isnan, OREF_NULL, and strCompare().
Referenced by RexxObject::doubleValue().
RexxString * RexxString::encodeBase64 | ( | ) |
Convert the character string into the same string with the characters converted into a Base64 encoding.
Definition at line 64 of file StringClassConversion.cpp.
References getBLength(), getStringData(), getWritableData(), and raw_string().
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 388 of file StringClass.hpp.
References getCharC(), and getCLength().
Referenced by RexxVariable::isStem().
RexxInteger * RexxString::equal | ( | RexxObject * | other | ) |
Definition at line 1237 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::equals | ( | RexxString * | other | ) |
The string equals() method, which does a strict compare with another string object.
other | The other string object. |
Definition at line 1161 of file StringClass.cpp.
References primitiveIsEqual(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2277 of file StringClass.cpp.
References RexxExpressionStack::push(), TRACE_PREFIX_LITERAL, and RexxActivation::traceIntermediate().
|
inline |
Definition at line 233 of file StringClass.hpp.
References getStringData(), and newString().
|
inline |
Definition at line 234 of file StringClass.hpp.
References getStringData(), and newString().
Referenced by RexxSource::addText(), build(), RexxSource::extract(), RexxSource::extractSource(), lower(), and upper().
|
inline |
Definition at line 238 of file StringClass.hpp.
References getStringData(), newString(), and size_v.
Referenced by RexxVariableDictionary::buildCompoundVariable(), RexxVariableDictionary::getVariableRetriever(), RexxActivity::messageSubstitution(), RexxTarget::remainder(), RexxNativeActivation::stemSort(), and RexxDirectory::unknown().
|
inline |
Definition at line 392 of file StringClass.hpp.
References createNumberString(), nonNumeric(), NumberString, and OREF_NULL.
Referenced by abs(), ceiling(), comp(), divide(), doubleValue(), floor(), format(), integerDivide(), integerValue(), Max(), Min(), minus(), multiply(), numberValue(), plus(), power(), remainder(), round(), sign(), trunc(), and unsignedNumberValue().
|
inline |
Definition at line 346 of file StringClass.hpp.
References blength, clength, size_v, and sizeC_v.
Referenced by FinishBufferString(), and rsnprintf().
|
virtual |
Reimplemented from RexxVirtualBase.
Definition at line 159 of file StringClass.cpp.
References cleanUpFlatten, flatten_reference, and setUpFlatten.
RexxObject * RexxString::floor | ( | ) |
The String class version of the floor method.
Definition at line 1084 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), RexxNumberString::floor(), OREF_NULL, and reportException().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::format | ( | RexxObject * | Integers, |
RexxObject * | Decimals, | ||
RexxObject * | MathExp, | ||
RexxObject * | ExpTrigger | ||
) |
Definition at line 1134 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), RexxNumberString::formatRexx(), OREF_NULL, and reportException().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
inline |
Definition at line 342 of file StringClass.hpp.
References blength.
Referenced by RexxSource::addCompound(), RexxSource::addText(), RexxMutableBuffer::append(), b2x(), bitAnd(), bitOr(), bitXor(), BufferStringLength(), build(), RexxVariableDictionary::buildCompoundVariable(), RexxCompoundTail::buildTail(), BUILTIN(), c2x(), RexxActivity::callCommandExit(), RexxActivity::callFunctionExit(), RexxActivity::callQueueNameExit(), caselessChangeStr(), RexxMutableBuffer::caselessChangeStr(), caselessCompare(), StringUtil::caselessCountStr(), caselessCountStrRexx(), StringUtil::caselessLastPos(), caselessLastPos(), caselessLastPosRexx(), RexxMutableBuffer::caselessMatch(), RexxMutableBuffer::caselessMatchChar(), StringUtil::caselessPos(), caselessPos(), caselessPosRexx(), StringUtil::caselessWordPos(), caselessWordPos(), center(), changeStr(), RexxMutableBuffer::changeStr(), checkIsASCII(), checkLower(), checkPadArgument(), CommandHandlerDispatcher::CommandHandlerDispatcher(), comp(), compare(), RexxCompoundTail::compare(), concat(), concatBlank(), concatRexx(), concatToCstring(), concatWith(), concatWithCstring(), copies(), copyData(), RexxInteger::copyIntoTail(), copyIntoTail(), copyToRxstring(), RexxNativeActivation::copyValue(), StringUtil::countStr(), countStrRexx(), RexxCompoundTail::createCompoundName(), StringUtil::dataType(), RexxActivation::debugPause(), decodeBase64(), delWord(), encodeBase64(), RexxInstructionOptions::execute(), RexxSource::extract(), SysFileSystem::extractDirectory(), SysFileSystem::extractExtension(), SysFileSystem::extractFile(), RexxSource::extractSource(), getObjectHashCode(), SystemInterpreter::getSourceString(), getStringHash(), RexxMutableBuffer::insert(), isEqual(), isInteger(), isSymbol(), StringUtil::lastPos(), lastPos(), lastPosRexx(), left(), RexxVariableReference::list(), RexxMethod::loadExternalMethod(), RoutineClass::loadExternalRoutine(), logicalValue(), lower(), StringUtil::makearray(), makeString(), RexxMutableBuffer::match(), RexxMutableBuffer::matchChar(), Interpreter::messageNumber(), RexxMutableBufferClass::newRexx(), newRexx(), RexxMutableBuffer::overlay(), RexxSource::parseTraceSetting(), StringUtil::pos(), pos(), RexxSource::position(), posRexx(), primitiveCaselessIsEqual(), primitiveIsEqual(), put(), RexxSource::resolveKeyword(), RexxActivation::resolveStream(), reverse(), right(), rsnprintf(), space(), strictComp(), RexxHashTable::stringGet(), RexxHashTable::stringGetAll(), StringLength(), RexxHashTable::stringPut(), stringTrace(), stringValue(), strip(), subchar(), substr(), subWord(), subWords(), toRxstring(), RexxActivation::traceCompoundValue(), RexxActivation::traceEntry(), RexxActivation::traceOperatorValue(), RexxActivation::traceSourceString(), RexxActivation::traceTaggedValue(), RexxActivation::traceValue(), translate(), RexxMutableBuffer::translate(), truthValue(), upper(), SystemInterpreter::validateAddressName(), StringUtil::verify(), verify(), word(), wordIndex(), wordLength(), StringUtil::wordPos(), wordPos(), words(), RexxSource::words(), x2b(), x2c(), and x2dC2d().
|
inline |
Definition at line 360 of file StringClass.hpp.
References stringData.
Referenced by build(), RexxMutableBuffer::caselessMatchChar(), RexxActivation::debugPause(), isSymbol(), RexxMutableBuffer::matchChar(), optionArgument(), RexxSource::parseTraceSetting(), and RexxSource::sourceNextToken().
|
inline |
Definition at line 361 of file StringClass.hpp.
References size_v, and stringData.
Referenced by RexxVariableDictionary::buildCompoundVariable(), BUILTIN(), caselessMatchChar(), RexxObject::defaultName(), endsWith(), RexxInstructionUseStrict::executeNamedArguments(), RexxNativeActivation::getContextStem(), RexxVariableDictionary::getDirectVariableRetriever(), RexxVariableDictionary::getVariableRetriever(), RexxVariableReference::list(), logicalValue(), matchChar(), RexxActivity::messageSubstitution(), RexxSource::needVariable(), RexxMessage::newRexx(), padArgument(), RexxObject::run(), RexxNativeActivation::stemSort(), and RexxDirectory::unknown().
|
inline |
Definition at line 343 of file StringClass.hpp.
References clength.
Referenced by abbrev(), RexxVariableDictionary::buildCompoundVariable(), caselessAbbrev(), caselessChangeStr(), caselessCompareToRexx(), caselessLastPosRexx(), caselessMatch(), caselessMatchChar(), caselessPosRexx(), RexxTarget::caselessSearch(), changeStr(), compareToRexx(), concat(), concatBlank(), concatRexx(), concatToCstring(), concatWith(), concatWithCstring(), createNumberString(), delstr(), endsWith(), RexxNativeActivation::getContextStem(), RexxVariableDictionary::getDirectVariableRetriever(), RexxVariableDictionary::getVariableRetriever(), insert(), lengthRexx(), lower(), lowerRexx(), makeString(), match(), matchChar(), RexxActivity::messageSubstitution(), newRexx(), numberString(), overlay(), padArgument(), primitiveCaselessCompareTo(), primitiveCaselessMatch(), primitiveCompareTo(), primitiveMatch(), replaceAt(), RexxTarget::search(), RexxNativeActivation::stemSort(), stringValue(), translate(), RexxDirectory::unknown(), upper(), and upperRexx().
|
virtual |
Get the primitive hash value of this String object.
Reimplemented from RexxInternalObject.
Definition at line 100 of file StringClass.cpp.
References getStringHash().
Referenced by RexxInteger::getHashValue(), RexxNumberString::getHashValue(), and hash().
HashCode RexxString::getObjectHashCode | ( | ) |
Convert a string returned from an object HashCode() method into a binary hashcode suitable for the hash collections.
Definition at line 113 of file StringClass.cpp.
References getBLength(), and getStringData().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2333 of file StringClass.cpp.
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2343 of file StringClass.cpp.
|
inline |
Definition at line 355 of file StringClass.hpp.
References stringData.
Referenced by abbrev(), RexxSource::addClause(), RexxSource::addCompound(), RexxSource::addText(), RexxMutableBuffer::append(), b2x(), bitAnd(), bitOr(), bitXor(), RexxCompoundTail::buildTail(), BUILTIN(), c2x(), RexxActivity::callCommandExit(), RexxActivity::callFunctionExit(), RexxActivation::callMacroSpaceFunction(), RexxActivity::callQueueNameExit(), RexxNativeActivation::callRegisteredRoutine(), caselessAbbrev(), caselessChangeStr(), RexxMutableBuffer::caselessChangeStr(), caselessCompare(), caselessCountStrRexx(), StringUtil::caselessLastPos(), caselessLastPos(), caselessLastPosRexx(), StringUtil::caselessPos(), caselessPos(), caselessPosRexx(), StringUtil::caselessWordPos(), caselessWordPos(), center(), changeStr(), RexxMutableBuffer::changeStr(), NamedArguments::check(), checkIsASCII(), checkLower(), RexxInstructionUseStrict::checkNamedArguments(), CommandHandlerDispatcher::CommandHandlerDispatcher(), comp(), compare(), RexxCompoundTail::compare(), concat(), concatBlank(), concatRexx(), concatWith(), copies(), copyData(), RexxInteger::copyIntoTail(), copyIntoTail(), copyToRxstring(), RexxNativeActivation::copyValue(), countStrRexx(), RexxCompoundTail::createCompoundName(), createNumberString(), StringUtil::dataType(), decodeBase64(), RexxObject::defMethod(), delstr(), delWord(), RexxNumberString::doubleValue(), PackageManager::dropRegisteredRoutine(), dumpClauseImpl(), dumpTokensImpl(), encodeBase64(), RexxSource::errorToken(), RexxInstructionUseStrict::executeNamedArguments(), extract(), extractB(), extractC(), SysFileSystem::extractDirectory(), SysFileSystem::extractExtension(), SysFileSystem::extractFile(), RoutineClass::fromFile(), RexxActivation::getMacroCode(), GetMessageName(), getObjectHashCode(), LibraryPackage::getPackageTable(), GetRoutineName(), SystemInterpreter::getSourceString(), RexxTarget::getWord(), RexxObject::idString(), RexxSource::initFile(), RexxMutableBuffer::insert(), insert(), isEqual(), isInteger(), isSymbol(), StringUtil::lastPos(), lastPos(), lastPosRexx(), left(), RexxMethod::loadExternalMethod(), RoutineClass::loadExternalRoutine(), PackageManager::loadRequires(), lower(), StringUtil::makearray(), RexxClass::makeProxy(), makeString(), Interpreter::messageNumber(), RexxMutableBufferClass::newRexx(), newRexx(), numberString(), ObjectToStringValue(), RexxNativeActivation::objectToValue(), RexxMemory::orphanCheckMark(), RexxMutableBuffer::overlay(), overlay(), RexxNativeActivation::pointerString(), StringUtil::pos(), pos(), RexxSource::position(), posRexx(), primitiveCaselessCompareTo(), primitiveCaselessIsEqual(), RexxMutableBuffer::primitiveCaselessMatch(), primitiveCaselessMatch(), primitiveCompareTo(), primitiveIsEqual(), RexxMutableBuffer::primitiveMatch(), primitiveMatch(), RexxNativeActivation::processArguments(), RoutineClass::processInstore(), ProgramMetaData::ProgramMetaData(), put(), SystemInterpreter::qualifyFileSystemName(), PackageManager::queryRegisteredRoutine(), RexxMutableBuffer::replaceAt(), replaceAt(), InterpreterInstance::resolveCommandHandler(), RexxSource::resolveKeyword(), SysInterpreterInstance::resolveProgramName(), PackageManager::resolveRegisteredRoutineEntry(), PackageManager::resolveRoutine(), RoutineClass::restoreFromMacroSpace(), reverse(), RexxActivation::RexxActivation(), RexxSourceLiteral::RexxSourceLiteral(), right(), rmemcmp(), rmemcpy(), rstrcat(), rstrcmp(), rstrcpy(), RexxMemory::runUninits(), RexxObject::setMethod(), space(), strictComp(), StringData(), RexxHashTable::stringGet(), RexxHashTable::stringGetAll(), RexxHashTable::stringPut(), stringTrace(), stringValue(), strip(), subchar(), substr(), subWord(), subWords(), toRxstring(), RexxArray::toString(), RexxActivation::traceEntry(), RexxActivation::traceSourceString(), RexxActivation::traceValue(), translate(), RexxMutableBuffer::translate(), truthValue(), upper(), SystemInterpreter::valueFunction(), StringUtil::verify(), verify(), word(), wordIndex(), wordLength(), StringUtil::wordPos(), wordPos(), words(), x2b(), and x2c().
|
inline |
Definition at line 135 of file StringClass.hpp.
References getBLength(), hashValue, stringData, and stringsize_v.
Referenced by getHashValue(), and hash().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2313 of file StringClass.cpp.
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2323 of file StringClass.cpp.
|
inline |
Definition at line 356 of file StringClass.hpp.
References stringData.
Referenced by b2x(), bitAnd(), bitOr(), bitXor(), BufferStringData(), RexxCompoundTail::buildTail(), c2x(), caselessChangeStr(), center(), changeStr(), concat(), concatBlank(), concatRexx(), concatToCstring(), concatWith(), concatWithCstring(), copies(), RexxCompoundTail::createCompoundName(), decodeBase64(), delstr(), delWord(), encodeBase64(), RexxNumberString::formatInternal(), SystemInterpreter::getSourceString(), insert(), left(), lower(), newUpperString(), overlay(), StringUtil::packHex(), put(), replaceAt(), reverse(), right(), rsnprintf(), space(), stringTrace(), toRxstring(), translate(), RexxNumberString::truncInternal(), upper(), x2b(), and x2dC2d().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 73 of file StringClass.cpp.
References Error_No_result_object_message, getHashValue(), getStringHash(), isString(), OREF_NULL, reportException(), RexxObject::requestString(), and RexxObject::sendMessage().
|
inline |
Definition at line 366 of file StringClass.hpp.
References Attributes, and STRING_HASLOWER.
Referenced by upper().
RexxString * RexxString::insert | ( | RexxString * | newStrObj, |
RexxInteger * | position, | ||
RexxInteger * | _length, | ||
RexxString * | pad | ||
) |
Definition at line 189 of file StringClassSub.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, getCLength(), getStringData(), getWritableData(), Numerics::minVal(), optionalLengthArgument(), optionalPadArgument(), raw_string(), size_v, and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::integerDivide | ( | RexxObject * | right | ) |
Definition at line 918 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxNumberString::integerDivide(), RexxObject::messageSend(), OREF_NULL, reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2014 of file StringClass.cpp.
References fastNumberString(), RexxInteger::getStringrep(), RexxNumberString::integerValue(), OREF_NULL, RexxInteger::setString(), and TheNilObject.
Referenced by RexxObject::integerValue(), RexxObject::requestInteger(), and RexxObject::requiredInteger().
|
inline |
Definition at line 373 of file StringClass.hpp.
References Attributes, and STRING_ISASCII.
Referenced by checkIsASCII().
|
inline |
Definition at line 371 of file StringClass.hpp.
References Attributes, and STRING_ISASCII_CHECKED.
Referenced by checkIsASCII().
RexxInteger * RexxString::isASCIIRexx | ( | ) |
Definition at line 1726 of file StringClass.cpp.
References checkIsASCII(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 488 of file StringClass.cpp.
References ARG_ONE, Error_Logical_value_method, Error_No_result_object_message, getBLength(), getStringData(), RexxInternalObject::isBaseClass(), OREF_NULL, reportException(), REQUEST_STRING(), requiredArgument(), RexxObject::sendMessage(), TheNilObject, and RexxObject::truthValue().
Referenced by RexxActivity::displayCondition(), RexxInteger::isEqual(), RexxNumberString::isEqual(), and RexxNativeActivation::trap().
RexxInteger * RexxString::isGreaterOrEqual | ( | RexxObject * | other | ) |
Definition at line 1305 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::isGreaterThan | ( | RexxObject * | other | ) |
Definition at line 1271 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxString::isInteger | ( | ) |
Definition at line 2218 of file StringClass.cpp.
References ch_BLANK, ch_MINUS, ch_NINE, ch_PERIOD, ch_PLUS, ch_TAB, ch_ZERO, getBLength(), getStringData(), TheFalseObject, and TheTrueObject.
Referenced by RexxNumberString::isInteger().
RexxInteger * RexxString::isLessOrEqual | ( | RexxObject * | other | ) |
Definition at line 1322 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::isLessThan | ( | RexxObject * | other | ) |
Definition at line 1288 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
int RexxString::isSymbol | ( | ) |
Definition at line 55 of file StringClassMisc.cpp.
References getBLength(), getCharB(), getStringData(), RexxSource::isSymbolCharacter(), MAX_SYMBOL_LENGTH, STRING_BAD_VARIABLE, STRING_COMPOUND_NAME, STRING_LITERAL, STRING_LITERAL_DOT, STRING_NAME, STRING_NUMERIC, and STRING_STEM.
Referenced by BUILTIN(), StringUtil::dataType(), RexxSource::getRetriever(), and RexxVariableDictionary::getVariableRetriever().
sizeC_t RexxString::lastPos | ( | RexxString * | needle, |
sizeC_t | _start | ||
) |
Primitive implementation of a lastpos search.
needle | The search needle. |
start | The starting position (origin 1). |
Definition at line 511 of file StringClassMisc.cpp.
References getBLength(), getStringData(), StringUtil::lastPos(), and size_v.
RexxInteger * RexxString::lastPosRexx | ( | RexxString * | needle, |
RexxInteger * | _start, | ||
RexxInteger * | _range | ||
) |
Do a lastpos() search for a string.
needle | The search needle. |
_start | The starting position. |
Definition at line 472 of file StringClassMisc.cpp.
References getBLength(), getStringData(), and StringUtil::lastPosRexx().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxString * RexxString::left | ( | RexxInteger * | _length, |
RexxString * | pad | ||
) |
Definition at line 294 of file StringClassSub.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), lengthArgument(), Numerics::minVal(), optionalPadArgument(), and raw_string().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::lengthRexx | ( | ) |
Definition at line 479 of file StringClass.cpp.
References getCLength(), and new_integer().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
virtual |
Reimplemented from RexxVirtualBase.
Definition at line 141 of file StringClass.cpp.
References memory_mark, and NumberString.
|
virtual |
Reimplemented from RexxVirtualBase.
Definition at line 150 of file StringClass.cpp.
References memory_mark_general, and NumberString.
RexxObject* RexxString::logicalOperation | ( | RexxObject * | , |
RexxObject * | , | ||
unsigned int | |||
) |
|
virtual |
Convert an object to a logical value without raising an error.
result | The converted value. |
Reimplemented from RexxObject.
Definition at line 1668 of file StringClass.cpp.
References getBLength(), getCharC(), isOfClass, and RexxObject::requestString().
Referenced by RexxObject::logicalValue().
RexxString * RexxString::lower | ( | ) |
Definition at line 1841 of file StringClass.cpp.
References getBLength(), getCLength(), getStringData(), getWritableData(), and raw_string().
Referenced by lowerRexx(), RexxTarget::next(), and StringLower().
RexxString * RexxString::lower | ( | sizeC_t | offset, |
sizeC_t | _length | ||
) |
Lowercase a portion of a Rexx string, returning a new string object. This method assumes the offset and length are already valid for this string object.
start | The starting offset of the segment to lowercase (origin 0). |
length | The length to lowercase. |
Definition at line 1968 of file StringClass.cpp.
References extractB(), getBLength(), getWritableData(), and size_v.
RexxString * RexxString::lowerRexx | ( | RexxInteger * | _start, |
RexxInteger * | _length | ||
) |
Rexx exported method stub for the lower() method.
start | The optional starting location. Defaults to the first character if not specified. |
length | The length to convert. Defaults to the segment from the start position to the end of the string. |
Definition at line 1899 of file StringClass.cpp.
References ARG_ONE, ARG_TWO, getCLength(), lower(), Numerics::minVal(), optionalLengthArgument(), and optionalPositionArgument().
Referenced by RexxMemory::createImage().
|
virtual |
Baseclass optimization for handling request array calls.
Reimplemented from RexxInternalObject.
Definition at line 224 of file StringClass.cpp.
References RexxObject::makeArrayRexx(), and OREF_NULL.
Referenced by RexxInteger::makeArray(), and RexxNumberString::makeArray().
RexxArray * RexxString::makeArrayRexx | ( | RexxString * | div | ) |
Definition at line 2192 of file StringClass.cpp.
References StringUtil::makearray().
Referenced by RexxSourceLiteral::RexxSourceLiteral().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 204 of file StringClass.cpp.
References getBLength(), getCLength(), getStringData(), RexxInternalObject::isBaseClass(), and new_string().
RexxInteger * RexxString::match | ( | RexxInteger * | start_, |
RexxString * | other, | ||
RexxInteger * | offset_, | ||
RexxInteger * | len_ | ||
) |
Test if regions within two strings match.
start_ | The starting compare position within the target string. This must be within the bounds of the string. |
other | The other compare string. |
offset_ | The starting offset of the compare string. This must be within the string bounds. The default start postion is 1. |
len_ | The length of the compare substring. The length and the offset must specify a valid substring of other. If not specified, this defaults to the substring from the offset to the end of the string. |
Definition at line 883 of file StringClassMisc.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, Error_Incorrect_method_length, Error_Incorrect_method_position, getCLength(), optionalLengthArgument(), optionalPositionArgument(), positionArgument(), primitiveMatch(), reportException(), size_v, stringArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::matchChar | ( | RexxInteger * | position_, |
RexxString * | matchSet | ||
) |
Compare a single character at a give position against a set of characters to see if any of the characters is a match.
position_ | The character position |
matchSet | The set to compare against. |
Definition at line 1020 of file StringClassMisc.cpp.
References ARG_ONE, ARG_TWO, Error_Incorrect_method_position, getCharC(), getCLength(), positionArgument(), reportException(), size_v, stringArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxString::Max | ( | RexxObject ** | args, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 1027 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), RexxNumberString::Max(), OREF_NULL, and reportException().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
inline |
Definition at line 378 of file StringClass.hpp.
References blength, and stringData.
Referenced by RexxLocalVariables::findVariable(), RexxLocalVariables::lookupStemVariable(), RexxLocalVariables::lookupVariable(), strCompare(), RexxHashTable::stringGet(), RexxHashTable::stringGetAll(), RexxHashTable::stringPut(), and RexxLocalVariables::updateVariable().
|
inline |
Definition at line 379 of file StringClass.hpp.
References blength, and stringData.
|
inline |
Definition at line 384 of file StringClass.hpp.
References blength, and stringData.
RexxObject * RexxString::Min | ( | RexxObject ** | args, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 1045 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), RexxNumberString::Min(), OREF_NULL, and reportException().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::minus | ( | RexxObject * | right | ) |
Definition at line 835 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), RexxNumberString::minus(), OREF_NULL, reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
RexxObject * RexxString::multiply | ( | RexxObject * | right | ) |
Definition at line 868 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), RexxNumberString::multiply(), OREF_NULL, reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
|
static |
Definition at line 2502 of file StringClass.cpp.
References RexxInternalObject::makeProxiedObject(), and new_string().
Referenced by new_proxy().
RexxString * RexxString::newRexx | ( | RexxObject ** | init_args, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 2521 of file StringClass.cpp.
References ARG_ONE, getBLength(), getCLength(), getStringData(), new_string(), RexxClass::processNewArgs(), RexxInternalObject::setBehaviour(), and stringArgument().
Referenced by RexxMemory::createImage().
|
static |
Definition at line 2353 of file StringClass.cpp.
References blength, clength, hashValue, new_object(), put(), putCharB(), RexxString(), setBLength(), setCLength(), RexxInternalObject::setHasNoReferences(), size_v, sizeC_v, and T_String.
Referenced by extract(), extractB(), extractC(), and new_string().
|
static |
Definition at line 2461 of file StringClass.cpp.
References new_numberstringFromDouble(), and RexxNumberString::stringValue().
|
static |
Convert a double value to a string using the provided precision.
number | The number to convert. |
precision | The precision requested for the result. |
Definition at line 2480 of file StringClass.cpp.
References new_string().
|
static |
Allocate an initialize a string object that will also contain only uppercase characters. This allows a creation and uppercase operation to be done in one shot, without requiring two string objects to be created.
string | The source string data. |
blength | The length in bytes of the string data. |
clength | The length in characters of the string data. |
Definition at line 2422 of file StringClass.cpp.
References blength, clength, getWritableData(), hashValue, new_object(), putCharB(), RexxString(), setBLength(), setCLength(), RexxInternalObject::setHasNoReferences(), setUpperOnly(), size_v, sizeC_v, and T_String.
Referenced by new_upper_string().
|
inline |
Definition at line 369 of file StringClass.hpp.
References Attributes, and STRING_NONNUMERIC.
Referenced by fastNumberString(), and numberString().
RexxInteger * RexxString::notEqual | ( | RexxObject * | other | ) |
Definition at line 1254 of file StringClass.cpp.
References comp(), OREF_NULL, TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxString::notOp | ( | ) |
Definition at line 2202 of file StringClass.cpp.
References Error_Logical_value_method, TheFalseObject, TheTrueObject, and truthValue().
Referenced by RexxMemory::createImage(), RexxNumberString::notOp(), and RexxNumberString::operatorNot().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 371 of file StringClass.cpp.
References getCLength(), getStringData(), isOfClass, new_numberstring(), nonNumeric(), NumberString, OREF_NULL, OrefSet, RexxObject::requestString(), RexxInternalObject::setHasReferences(), setNonNumeric(), RexxNumberString::setString(), and size_v.
Referenced by d2c(), d2x(), StringUtil::dataType(), RexxInteger::numberString(), and RexxObject::numberString().
|
virtual |
Reimplemented from RexxObject.
Definition at line 270 of file StringClass.cpp.
References fastNumberString(), isString(), RexxNumberString::numberValue(), numberValue(), OREF_NULL, and RexxObject::requestString().
|
virtual |
Reimplemented from RexxObject.
Definition at line 249 of file StringClass.cpp.
References fastNumberString(), isString(), RexxNumberString::numberValue(), numberValue(), OREF_NULL, and RexxObject::requestString().
Referenced by BUILTIN(), StringUtil::dataType(), Interpreter::messageNumber(), RexxObject::numberValue(), numberValue(), and RexxNativeActivation::variablePoolFetchPrivate().
|
inline |
Definition at line 123 of file StringClass.hpp.
RexxObject * RexxString::operatorNot | ( | RexxObject * | other | ) |
Definition at line 2210 of file StringClass.cpp.
References Error_Logical_value_method, TheFalseObject, TheTrueObject, and truthValue().
RexxObject * RexxString::orOp | ( | RexxObject * | other | ) |
Definition at line 2130 of file StringClass.cpp.
References ARG_ONE, Error_Logical_value_method, isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, requiredArgument(), TheFalseObject, TheTrueObject, RexxObject::truthValue(), and truthValue().
Referenced by RexxMemory::createImage(), and RexxNumberString::orOp().
RexxString * RexxString::overlay | ( | RexxString * | newStrObj, |
RexxInteger * | position, | ||
RexxInteger * | _length, | ||
RexxString * | pad | ||
) |
Definition at line 340 of file StringClassSub.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, getCLength(), getStringData(), getWritableData(), optionalLengthArgument(), optionalPadArgument(), optionalPositionArgument(), raw_string(), size_v, and stringArgument().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::plus | ( | RexxObject * | right | ) |
Definition at line 802 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), OREF_NULL, RexxNumberString::plus(), reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
sizeC_t RexxString::pos | ( | RexxString * | needle, |
sizeC_t | _start | ||
) |
Do a primitive level pos() search on a string.
needle | The search needle. |
_start | The starting position (origin 0) |
Definition at line 743 of file StringClassMisc.cpp.
References getBLength(), getStringData(), StringUtil::pos(), and size_v.
Referenced by changeStr(), and RexxActivity::messageSubstitution().
RexxInteger * RexxString::posRexx | ( | RexxString * | needle, |
RexxInteger * | pstart, | ||
RexxInteger * | range | ||
) |
Definition at line 702 of file StringClassMisc.cpp.
References getBLength(), getStringData(), and StringUtil::posRexx().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxObject * RexxString::power | ( | RexxObject * | right | ) |
Definition at line 968 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), OREF_NULL, RexxNumberString::power(), reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::primitiveCaselessCompareTo | ( | RexxString * | other, |
stringsizeC_t | _start, | ||
stringsizeC_t | len | ||
) |
Perform a compare of regions of two string objects. Returns -1, 0, 1 based on the relative ordering of the two strings.
other | The source string for the compare. |
start | The starting offset within the target string. |
len | The length of the substring to compare. |
Definition at line 1205 of file StringClassMisc.cpp.
References StringUtil::caselessCompare(), getCLength(), getStringData(), IntegerMinusOne, IntegerOne, IntegerZero, Numerics::minVal(), and size_v.
Referenced by caselessCompareToRexx().
bool RexxString::primitiveCaselessIsEqual | ( | RexxObject * | otherObj | ) |
Primitive string caseless comparison.
otherObj | The other string to compare. |
Definition at line 553 of file StringClass.cpp.
References ARG_ONE, StringUtil::caselessCompare(), getBLength(), getStringData(), REQUEST_STRING(), requiredArgument(), and TheNilObject.
Referenced by caselessEquals().
bool RexxString::primitiveCaselessMatch | ( | stringsizeC_t | _start, |
RexxString * | other, | ||
stringsizeC_t | offset, | ||
stringsizeC_t | len | ||
) |
Perform a caselesee compare of regions of two string objects. Returns true if the two regions match, returns false for mismatches.
start | The starting offset within the target string. |
other | The source string for the compare. |
offset | The offset of the substring of the other string to use. |
len | The length of the substring to compare. |
Definition at line 993 of file StringClassMisc.cpp.
References StringUtil::caselessCompare(), getCLength(), getStringData(), and size_v.
Referenced by caselessMatch().
RexxInteger * RexxString::primitiveCompareTo | ( | RexxString * | other, |
stringsizeC_t | _start, | ||
stringsizeC_t | len | ||
) |
Perform a compare of regions of two string objects. Returns -1, 0, 1 based on the relative ordering of the two strings.
other | The source string for the compare. |
start | The starting offset within the target string. |
len | The length of the substring to compare. |
Definition at line 1116 of file StringClassMisc.cpp.
References getCLength(), getStringData(), IntegerMinusOne, IntegerOne, IntegerZero, Numerics::minVal(), and size_v.
Referenced by compareToRexx().
bool RexxString::primitiveIsEqual | ( | RexxObject * | otherObj | ) |
Definition at line 522 of file StringClass.cpp.
References ARG_ONE, getBLength(), getStringData(), REQUEST_STRING(), requiredArgument(), and TheNilObject.
Referenced by equals(), strictEqual(), and strictNotEqual().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 241 of file StringClass.cpp.
bool RexxString::primitiveMatch | ( | stringsizeC_t | _start, |
RexxString * | other, | ||
stringsizeC_t | offset, | ||
stringsizeC_t | len | ||
) |
Perform a compare of regions of two string objects. Returns true if the two regions match, returns false for mismatches.
start | The starting offset within the target string. |
other | The source string for the compare. |
offset | The offset of the substring of the other string to use. |
len | The length of the substring to compare. |
Definition at line 966 of file StringClassMisc.cpp.
References getCLength(), getStringData(), and size_v.
Referenced by match().
Definition at line 357 of file StringClass.hpp.
References getWritableData().
Referenced by newString(), RexxNumberString::stringValue(), StringUtil::substr(), RexxSource::traceBack(), RexxActivation::traceCompoundValue(), RexxActivation::traceEntry(), RexxActivation::traceOperatorValue(), RexxActivation::traceSourceString(), RexxActivation::traceTaggedValue(), and RexxActivation::traceValue().
|
inline |
Definition at line 358 of file StringClass.hpp.
References getBLength(), getStringData(), and put().
Referenced by put().
|
inline |
Definition at line 362 of file StringClass.hpp.
References stringData.
Referenced by BUILTIN(), newString(), newUpperString(), RexxSource::packLiteral(), rawString(), RexxSource::sourceNextToken(), RexxNumberString::stringValue(), RexxActivation::traceCompoundValue(), RexxActivation::traceOperatorValue(), RexxActivation::traceSourceString(), RexxActivation::traceTaggedValue(), and RexxActivation::traceValue().
|
static |
Definition at line 2383 of file StringClass.cpp.
References blength, clength, hashValue, new_object(), putCharB(), RexxString(), setBLength(), setCLength(), RexxInternalObject::setHasNoReferences(), size_v, and T_String.
Referenced by raw_string().
RexxObject * RexxString::remainder | ( | RexxObject * | right | ) |
Definition at line 943 of file StringClass.cpp.
References RexxObject::classObject(), Error_Conversion_operator, fastNumberString(), RexxObject::messageSend(), OREF_NULL, RexxNumberString::remainder(), reportException(), RexxObject::stringValue(), TheIntegerClass, and TheNumberStringClass.
Referenced by RexxMemory::createImage().
RexxString * RexxString::replaceAt | ( | RexxString * | newStrObj, |
RexxInteger * | position, | ||
RexxInteger * | _length, | ||
RexxString * | pad | ||
) |
Replace a substring starting at a given position and length with another string. This operation is essentially a delstr() followed by an insert() operation.
newStrObj | The replacement string |
position | The replacement position (required) |
_length | The length of string to replace (optional). If omitted, the length of the replacement string is used and this is essentially an overlay operation. |
pad | The padding character if padding is required. The default is a ' ' |
Definition at line 457 of file StringClassSub.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, getCLength(), getStringData(), getWritableData(), optionalLengthArgument(), optionalPadArgument(), positionArgument(), raw_string(), size_v, and stringArgument().
Referenced by RexxMemory::createImage().
RexxString * RexxString::reverse | ( | ) |
Definition at line 531 of file StringClassSub.cpp.
References getBLength(), getStringData(), getWritableData(), and raw_string().
Referenced by RexxMemory::createImage().
RexxString * RexxString::right | ( | RexxInteger * | _length, |
RexxString * | pad | ||
) |
Definition at line 568 of file StringClassSub.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), lengthArgument(), Numerics::minVal(), optionalPadArgument(), and raw_string().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::round | ( | ) |
The String class version of the round method.
Definition at line 1120 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), OREF_NULL, reportException(), and RexxNumberString::round().
Referenced by RexxMemory::createImage().
Definition at line 359 of file StringClass.hpp.
References stringData.
Referenced by RexxNumberString::stringValue(), StringUtil::substr(), RexxSource::traceBack(), RexxActivation::traceCompoundValue(), RexxActivation::traceEntry(), RexxActivation::traceOperatorValue(), RexxActivation::traceSourceString(), RexxActivation::traceTaggedValue(), and RexxActivation::traceValue().
|
inline |
Definition at line 344 of file StringClass.hpp.
References blength.
Referenced by newString(), newUpperString(), and rawString().
|
inline |
Definition at line 345 of file StringClass.hpp.
References clength.
Referenced by newString(), newUpperString(), and rawString().
|
inline |
Definition at line 368 of file StringClass.hpp.
References Attributes, and STRING_HASLOWER.
Referenced by checkLower().
|
inline |
Definition at line 374 of file StringClass.hpp.
References Attributes, and STRING_ISASCII.
Referenced by checkIsASCII().
|
inline |
Definition at line 372 of file StringClass.hpp.
References Attributes, and STRING_ISASCII_CHECKED.
Referenced by checkIsASCII().
|
inline |
Definition at line 370 of file StringClass.hpp.
References Attributes, and STRING_NONNUMERIC.
Referenced by createNumberString(), and numberString().
void RexxString::setNumberString | ( | RexxObject * | NumberRep | ) |
Definition at line 2044 of file StringClass.cpp.
References NumberString, OREF_NULL, OrefSet, RexxInternalObject::setHasNoReferences(), and RexxInternalObject::setHasReferences().
Referenced by RexxSource::addText(), and RexxNumberString::stringValue().
|
inline |
Definition at line 367 of file StringClass.hpp.
References Attributes, and STRING_NOLOWER.
Referenced by checkLower(), newUpperString(), and RexxSource::sourceNextToken().
RexxObject * RexxString::sign | ( | void | ) |
Definition at line 1010 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), OREF_NULL, reportException(), and RexxNumberString::Sign().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
inline |
Definition at line 419 of file StringClass.hpp.
References blength, StringUtil::caselessCompare(), and stringData.
Referenced by compare_asc_i(), compare_asc_i_cols(), compare_desc_i(), and compare_desc_i_cols().
|
inline |
Definition at line 470 of file StringClass.hpp.
References StringUtil::caselessCompare(), clength, size_v, and stringData.
|
inline |
Definition at line 402 of file StringClass.hpp.
References blength, and stringData.
Referenced by compare_asc(), compare_asc_cols(), compare_desc(), and compare_desc_cols().
|
inline |
Definition at line 436 of file StringClass.hpp.
References clength, size_v, and stringData.
RexxString * RexxString::space | ( | RexxInteger * | space_count, |
RexxString * | pad | ||
) |
Definition at line 147 of file StringClassWord.cpp.
References ARG_ONE, ARG_TWO, getBLength(), getStringData(), getWritableData(), StringUtil::nextWord(), optionalLengthArgument(), optionalPadArgument(), raw_string(), and size_v.
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 377 of file StringClass.hpp.
References blength, Utilities::strCaselessCompare(), and stringData.
Referenced by check_queue(), RexxActivation::enableExternalTrace(), RexxInstructionOptions::execute(), LibraryPackage::locateMethodEntry(), LibraryPackage::locateRoutineEntry(), RexxActivation::resolveStream(), and SystemInterpreter::valueFunction().
|
inline |
Definition at line 376 of file StringClass.hpp.
References memCompare().
Referenced by BUILTIN(), RexxNativeActivation::checkConditions(), RexxActivation::command(), RexxClass::defineMethod(), RexxClass::defineMethods(), RexxObject::defMethod(), doubleValue(), RexxInstructionNumeric::execute(), RexxInstructionRaise::execute(), ContextCommandHandlerDispatcher::handleError(), RexxClass::methodDictionaryMerge(), RexxActivation::raise(), RexxStem::request(), RexxActivation::rexxVariable(), RexxDirectory::setMethod(), RexxActivation::trap(), RexxActivation::trapOff(), RexxActivation::trapOn(), and RexxSource::useNew().
wholenumber_t RexxString::strictComp | ( | RexxObject * | otherObj, |
RexxString * | alternativeOperator = NULL , |
||
RexxInteger ** | alternativeOperatorResultPtr = NULL |
||
) |
Definition at line 737 of file StringClass.cpp.
References ARG_ONE, getBLength(), getStringData(), isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, REQUEST_STRING(), and requiredArgument().
Referenced by RexxNumberString::strictComp(), RexxInteger::strictComp(), strictGreaterOrEqual(), strictGreaterThan(), strictLessOrEqual(), and strictLessThan().
RexxInteger * RexxString::strictEqual | ( | RexxObject * | other | ) |
Definition at line 1182 of file StringClass.cpp.
References isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, primitiveIsEqual(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage(), and RexxObject::requestRexx().
RexxInteger * RexxString::strictGreaterOrEqual | ( | RexxObject * | other | ) |
Definition at line 1373 of file StringClass.cpp.
References OREF_NULL, strictComp(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::strictGreaterThan | ( | RexxObject * | other | ) |
Definition at line 1339 of file StringClass.cpp.
References OREF_NULL, strictComp(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::strictLessOrEqual | ( | RexxObject * | other | ) |
Definition at line 1390 of file StringClass.cpp.
References OREF_NULL, strictComp(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::strictLessThan | ( | RexxObject * | other | ) |
Definition at line 1356 of file StringClass.cpp.
References OREF_NULL, strictComp(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::strictNotEqual | ( | RexxObject * | other | ) |
Definition at line 1210 of file StringClass.cpp.
References isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, primitiveIsEqual(), TheFalseObject, TheNilObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxString * RexxString::stringTrace | ( | ) |
Definition at line 1789 of file StringClass.cpp.
References ch_SPACE, ch_TAB, RexxObject::copy(), getBLength(), getStringData(), and getWritableData().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 189 of file StringClass.cpp.
References getBLength(), getCLength(), getStringData(), isOfClass, and new_string().
Referenced by Interpreter::messageNumber(), and RexxSource::position().
RexxString * RexxString::strip | ( | RexxString * | optionString, |
RexxString * | stripchar | ||
) |
Strip a set of leading and/or trailing characters from a string, returning a new string value.
option | The option indicating which characters to strip. |
stripchar | The set of characters to strip. |
Definition at line 621 of file StringClassSub.cpp.
References ARG_ONE, ARG_TWO, Error_Incorrect_method_option, getBLength(), getStringData(), StringUtil::matchCharacter(), new_string(), optionalOptionArgument(), optionalStringArgument(), OREF_NULL, reportException(), STRIP_BOTH, STRIP_LEADING, and STRIP_TRAILING.
Referenced by RexxMemory::createImage().
RexxString * RexxString::subchar | ( | RexxInteger * | positionArg | ) |
Extract a single character from a string object. Returns a null string if the specified position is beyond the bounds of the string.
positionArg | The position of the target character. Must be a positive whole number. |
Definition at line 716 of file StringClassSub.cpp.
References getBLength(), getStringData(), and StringUtil::subchar().
Referenced by RexxMemory::createImage().
RexxString * RexxString::substr | ( | RexxInteger * | position, |
RexxInteger * | _length, | ||
RexxString * | pad | ||
) |
Definition at line 694 of file StringClassSub.cpp.
References getBLength(), getStringData(), and StringUtil::substr().
Referenced by RexxMemory::createImage().
RexxString * RexxString::subWord | ( | RexxInteger * | position, |
RexxInteger * | plength | ||
) |
Definition at line 229 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::subWord().
Referenced by RexxMemory::createImage().
RexxArray * RexxString::subWords | ( | RexxInteger * | position, |
RexxInteger * | plength | ||
) |
Returns an array of all words contained in the given range of the string, using the same extraction rules used for subWord() and word().
position | The optional starting position. If not provided, extraction starts with the first word. |
plength | The number of words to extract. If omitted, will extract from the starting postion to the end of the string. |
Definition at line 249 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::subWords().
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 385 of file StringClass.hpp.
References getBLength(), getStringData(), size_v, _CONSTRXSTRING::strlength, and _CONSTRXSTRING::strptr.
Referenced by RexxActivity::callCommandExit(), RexxActivity::callFunctionExit(), RexxActivity::callObjectFunctionExit(), RexxActivity::callPushExit(), RexxNativeActivation::callRegisteredRoutine(), RexxActivity::callSayExit(), RexxActivity::callScriptingExit(), and RexxActivity::callTraceExit().
|
inline |
Definition at line 386 of file StringClass.hpp.
References getBLength(), getWritableData(), size_v, _RXSTRING::strlength, and _RXSTRING::strptr.
RexxString * RexxString::translate | ( | RexxString * | tableo, |
RexxString * | tablei, | ||
RexxString * | pad, | ||
RexxInteger * | _start, | ||
RexxInteger * | _range | ||
) |
Definition at line 766 of file StringClassMisc.cpp.
References ARG_FOUR, ARG_ONE, ARG_THREE, ARG_TWO, getBLength(), getCLength(), getStringData(), getWritableData(), StringUtil::memPos(), Numerics::minVal(), new_string(), optionalLengthArgument(), optionalPadArgument(), optionalPositionArgument(), optionalStringArgument(), OREF_NULL, size_v, and upperRexx().
Referenced by RexxMemory::createImage().
RexxObject * RexxString::trunc | ( | RexxInteger * | decimals | ) |
Definition at line 1063 of file StringClass.cpp.
References Error_Incorrect_method_string_nonumber, fastNumberString(), OREF_NULL, reportException(), and RexxNumberString::trunc().
Referenced by BUILTIN(), and RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 1626 of file StringClass.cpp.
References getBLength(), getStringData(), isOfClass, reportException(), and RexxObject::requestString().
Referenced by andOp(), notOp(), operatorNot(), orOp(), RexxObject::truthValue(), and xorOp().
|
virtual |
Reimplemented from RexxVirtualBase.
Definition at line 172 of file StringClass.cpp.
References RexxInternalObject::isProxyObject(), TheEnvironment, and RexxVirtualBase::unflatten().
|
virtual |
Reimplemented from RexxObject.
Definition at line 314 of file StringClass.cpp.
References fastNumberString(), isString(), OREF_NULL, RexxObject::requestString(), RexxNumberString::unsignedNumberValue(), and unsignedNumberValue().
|
virtual |
Reimplemented from RexxObject.
Definition at line 292 of file StringClass.cpp.
References fastNumberString(), isString(), OREF_NULL, RexxObject::requestString(), RexxNumberString::unsignedNumberValue(), and unsignedNumberValue().
Referenced by RexxObject::unsignedNumberValue(), and unsignedNumberValue().
RexxString * RexxString::upper | ( | ) |
Definition at line 1758 of file StringClass.cpp.
References checkLower(), getBLength(), getCLength(), getStringData(), getWritableData(), hasLower(), raw_string(), and upperOnly().
Referenced by PackageManager::addRegisteredRoutine(), RexxSource::attributeDirective(), BUILTIN(), PackageManager::callNativeRoutine(), RexxSource::classDirective(), RexxSource::constantDirective(), RexxObject::decodeMessageName(), RexxClass::defineClassMethod(), RexxClass::defineMethod(), RexxObject::defMethod(), RexxObject::defMethods(), RexxClass::deleteMethod(), PackageManager::dropRegisteredRoutine(), RexxDirectory::entry(), RexxDirectory::entryRexx(), RexxInstructionForward::execute(), RexxSource::extensionDirective(), RexxSource::findClass(), Interpreter::findClass(), RexxSource::findRoutine(), RexxVariableDictionary::getVariableRetriever(), RexxDirectory::hasEntry(), RexxObject::hasMethodRexx(), RexxObject::instanceMethod(), RexxClass::method(), RexxClass::methodDictionaryCreate(), RexxSource::methodDirective(), RexxBehaviour::methodObject(), RexxTarget::next(), PackageManager::queryRegisteredRoutine(), RexxDirectory::remove(), RexxStem::request(), RexxObject::requestRexx(), InterpreterInstance::resolveCommandHandler(), RexxExpressionMessage::RexxExpressionMessage(), RexxDirectory::setEntry(), RexxDirectory::setMethod(), RexxObject::setMethod(), RexxNativeActivation::stemSort(), StringUpper(), RexxObject::unsetMethod(), RexxCompoundVariable::upper(), RexxStemVariable::upper(), RexxParseVariable::upper(), upperRexx(), and RexxSource::words().
RexxString * RexxString::upper | ( | sizeC_t | offset, |
sizeC_t | _length | ||
) |
Uppercase a portion of a Rexx string, returning a new string object. This method assumes the offset and length are already valid for this string object.
start | The starting offset of the segment to uppercase (origin 0). |
length | The length to lowercase. |
Definition at line 1998 of file StringClass.cpp.
References extractB(), getBLength(), getWritableData(), and size_v.
|
inline |
Definition at line 365 of file StringClass.hpp.
References Attributes, and STRING_NOLOWER.
Referenced by upper().
RexxString * RexxString::upperRexx | ( | RexxInteger * | _start, |
RexxInteger * | _length | ||
) |
Rexx exported method stub for the upper() method.
start | The optional starting location. Defaults to the first character if not specified. |
length | The length to convert. Defaults to the segment from the start position to the end of the string. |
Definition at line 1933 of file StringClass.cpp.
References ARG_ONE, ARG_TWO, getCLength(), Numerics::minVal(), optionalLengthArgument(), optionalPositionArgument(), and upper().
Referenced by RexxMemory::createImage(), and translate().
RexxInteger * RexxString::verify | ( | RexxString * | ref, |
RexxString * | option, | ||
RexxInteger * | _start, | ||
RexxInteger * | range | ||
) |
Definition at line 854 of file StringClassMisc.cpp.
References getBLength(), getStringData(), and StringUtil::verify().
Referenced by RexxMemory::createImage().
RexxString * RexxString::word | ( | RexxInteger * | position | ) |
Definition at line 262 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::word().
Referenced by RexxMemory::createImage(), RexxInstructionOptions::execute(), RexxVariableReference::list(), and RexxSource::words().
RexxInteger * RexxString::wordIndex | ( | RexxInteger * | position | ) |
Definition at line 274 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::wordIndex().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::wordLength | ( | RexxInteger * | position | ) |
Definition at line 286 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::wordLength().
Referenced by RexxMemory::createImage().
RexxInteger * RexxString::wordPos | ( | RexxString * | phrase, |
RexxInteger * | pstart | ||
) |
Perform a wordpos search on a string object.
phrase | The search phrase |
pstart | The starting search position. |
Definition at line 301 of file StringClassWord.cpp.
References getBLength(), getStringData(), and StringUtil::wordPos().
Referenced by BUILTIN(), and RexxMemory::createImage().
RexxInteger * RexxString::words | ( | ) |
Definition at line 328 of file StringClassWord.cpp.
References getBLength(), getStringData(), new_integer(), and StringUtil::wordCount().
Referenced by RexxMemory::createImage().
RexxString * RexxString::x2b | ( | ) |
Definition at line 612 of file StringClassConversion.cpp.
References ch_SPACE, ch_TAB, getBLength(), getStringData(), getWritableData(), StringUtil::hexDigitToInt(), raw_string(), StringUtil::unpackNibble(), and StringUtil::validateSet().
Referenced by RexxMemory::createImage().
RexxString * RexxString::x2c | ( | ) |
Definition at line 290 of file StringClassConversion.cpp.
References getBLength(), getStringData(), and StringUtil::packHex().
Referenced by RexxMemory::createImage().
RexxString * RexxString::x2d | ( | RexxInteger * | _length | ) |
Definition at line 308 of file StringClassConversion.cpp.
References x2dC2d().
Referenced by RexxMemory::createImage().
RexxString * RexxString::x2dC2d | ( | RexxInteger * | _length, |
bool | type | ||
) |
Definition at line 318 of file StringClassConversion.cpp.
References RexxNumberString::addToBaseTen(), ARG_ONE, RexxObject::copy(), Error_Incorrect_method_c2dbig, Error_Incorrect_method_x2dbig, getBLength(), RexxBuffer::getData(), getWritableData(), IntegerZero, RexxNumberString::multiplyBaseTen(), new_buffer(), number_digits(), optionalLengthArgument(), OREF_NULL, OVERFLOWSPACE, StringUtil::packHex(), raw_string(), reportException(), StringLength(), and type.
RexxObject * RexxString::xorOp | ( | RexxObject * | other | ) |
Definition at line 2158 of file StringClass.cpp.
References ARG_ONE, Error_Logical_value_method, isPolymorphicString(), RexxObject::messageSend(), OREF_NULL, requiredArgument(), TheFalseObject, TheTrueObject, RexxObject::truthValue(), and truthValue().
Referenced by RexxMemory::createImage(), and RexxNumberString::xorOp().
|
protected |
Definition at line 524 of file StringClass.hpp.
Referenced by hasLower(), isASCII(), isASCIIChecked(), nonNumeric(), setHasLower(), setIsASCII(), setIsASCIIChecked(), setNonNumeric(), setUpperOnly(), and upperOnly().
|
protected |
Definition at line 522 of file StringClass.hpp.
Referenced by finish(), getBLength(), memCompare(), memCopy(), newString(), newUpperString(), rawString(), setBLength(), sortCaselessCompare(), sortCompare(), and strCaselessCompare().
Definition at line 516 of file StringClass.hpp.
|
protected |
Definition at line 521 of file StringClass.hpp.
Referenced by finish(), getCLength(), newString(), newUpperString(), rawString(), setCLength(), sortCaselessCompare(), and sortCompare().
|
protected |
Definition at line 520 of file StringClass.hpp.
Referenced by getStringHash(), newString(), newUpperString(), and rawString().
|
protected |
Definition at line 523 of file StringClass.hpp.
Referenced by createNumberString(), fastNumberString(), isNumberString(), live(), liveGeneral(), numberString(), and setNumberString().
|
static |
Definition at line 513 of file StringClass.hpp.
|
protected |
Definition at line 525 of file StringClass.hpp.
Referenced by getCharB(), getCharC(), getStringData(), getStringHash(), getWritableData(), memCompare(), memCopy(), putCharB(), set(), sortCaselessCompare(), sortCompare(), and strCaselessCompare().