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. 79 #define string_forwarder_cpp(method)\ 80 RexxObject *RexxInteger::##method(RexxObject *operand)\ 82 return (RexxObject *)this->string()->method(operand);\ 165 char stringBuffer[32];
187 char stringBuffer[32];
210 char stringBuffer[32];
214 tail->
append(stringBuffer, strlen(stringBuffer));
365 if (this->
value == 0)
369 else if (this->
value != 1)
387 if (this->
value == 0)
392 else if (this->
value == 1)
408 #define integer_forward(s,m,o) ((s)->numberString()->m(o)) 590 if (other->
value != 0)
617 if (other->
value != 0)
970 else if (this->
value < 0)
997 maxvalue = this->
value;
1001 for (arg = 0; arg < argCount; arg++) {
1002 argument = args[arg];
1044 minvalue = this->
value;
1048 for (arg = 0; arg < argCount; arg++) {
1049 argument = args[arg];
1266 void *RexxInteger::operator
new(
size_t size)
RexxInteger * strictNotEqual(RexxObject *)
void sendMessage(RexxString *, RexxArray *, ProtectedObject &)
RexxObject * multiply(RexxInteger *)
bool isInstanceOf(RexxClass *)
RexxInteger * isGreaterOrEqual(RexxObject *)
RexxNumberString * new_numberstringFromWholenumber(wholenumber_t n)
RexxInteger * new_integer(wholenumber_t v)
#define memory_mark_general(oref)
static PCPPM operatorMethods[]
bool isSameType(RexxInternalObject *o)
static void createInstance()
static RexxInteger * integerOne
static size_t formatWholeNumber(wholenumber_t integer, char *dest)
static RexxInteger * falseObject
RexxString * makeString()
virtual HashCode getHashValue()
RexxMethod * instanceMethod(RexxString *)
static RexxInteger * integerFour
void setString(RexxString *string)
static RexxIntegerClass * classInstance
static const wholenumber_t validMaxWhole[]
RexxString * formatRexx(RexxObject *, RexxObject *, RexxObject *, RexxObject *)
RexxInteger * integercache[100 - -10]
void requiredArgument(RexxObject *object, size_t position)
RexxObject * evaluate(RexxActivation *, RexxExpressionStack *)
RexxInteger * strictGreaterOrEqual(RexxObject *)
wholenumber_t wholeNumber()
virtual bool logicalValue(logical_t &)
wholenumber_t comp(RexxObject *)
RexxObject * integerDivide(RexxInteger *)
#define Error_Incorrect_method_noarg
void reportException(wholenumber_t error)
void traceIntermediate(RexxObject *v, int p)
RexxInteger * equal(RexxObject *)
static const wholenumber_t MAX_WHOLENUMBER
static RexxInteger * integerZero
RexxObject * plus(RexxInteger *)
RexxObject * divide(RexxInteger *)
bool isEqual(RexxObject *)
RexxInteger * hasMethod(RexxString *)
RexxString * primitiveMakeString()
RexxObject * minus(RexxInteger *)
bool numberValue(wholenumber_t &result, size_t precision)
const char * getStringData()
bool isSubClassOrEnhanced()
wholenumber_t comp(RexxObject *other)
RexxString * concat(RexxString *)
static RexxInteger * integerNine
RexxInteger * strictGreaterThan(RexxObject *)
void copyIntoTail(RexxCompoundTail *)
RexxString * concatBlank(RexxString *)
RexxObject * trunc(RexxObject *)
static RexxInteger * integerEight
RexxObject * d2c(RexxObject *)
RexxNumberString * numberString()
RexxString * new_string(const char *s, stringsize_t l)
RexxInteger * strictLessOrEqual(RexxObject *)
RexxObject * getValue(RexxActivation *)
RexxObject * orOp(RexxObject *)
RexxString * stringValue()
RexxObject * d2x(RexxObject *)
static RexxInteger * integerSeven
RexxObject * andOp(RexxObject *)
static RexxInteger * nullPointer
#define flatten_reference(oref, envel)
RexxInteger * isGreaterThan(RexxObject *)
wholenumber_t strictComp(RexxObject *)
static RexxInteger * trueObject
void liveGeneral(int reason)
RexxObject * getRealValue(RexxActivation *)
RexxObject * Min(RexxObject **, size_t)
#define Error_Overflow_zero
RexxInteger * strictLessThan(RexxObject *)
void liveGeneral(int reason)
RexxObject *(RexxObject::* PCPPM)()
RexxObject * power(RexxObject *)
RexxString * concatWith(RexxString *, char)
RexxNumberString * Max(RexxObject **, size_t)
RexxInteger * isLessOrEqual(RexxObject *)
static const size_t DEFAULT_DIGITS
#define CLASS_CREATE(name, id, className)
void liveGeneral(int reason)
void push(RexxObject *value)
void append(const char *newData, size_t stringLen)
#define memory_mark(oref)
#define integer_forward(s, m, o)
RexxObject * format(RexxObject *, RexxObject *, RexxObject *, RexxObject *)
RexxObject * unknown(RexxString *, RexxArray *)
RexxString * REQUEST_STRING(RexxObject *object)
RexxObject * xorOp(RexxObject *)
void setHasNoReferences()
virtual RexxInteger * hasMethod(RexxString *msg)
RexxInteger * strictEqual(RexxObject *)
bool unsignedNumberValue(stringsize_t &result, size_t precision)
RexxInteger * notEqual(RexxObject *)
RexxString * d2xD2c(RexxObject *, bool)
RexxMethod * instanceMethod(RexxString *)
void flatten(RexxEnvelope *)
static RexxInteger * integerSix
RexxObject * Max(RexxObject **, size_t)
RexxInteger * isLessThan(RexxObject *)
RexxObject * remainder(RexxInteger *)
#define setUpFlatten(type)
virtual HashCode getHashValue()
static RexxInteger * integerThree
#define Error_Logical_value_method
RexxClass * classObject()
static RexxInteger * integerFive
RexxInteger * integerValue(size_t)
RexxNumberString * Min(RexxObject **, size_t)
bool doubleValue(double &result)
RexxSupplier * instanceMethods(RexxClass *)
wholenumber_t strictComp(RexxObject *)
RexxObject * trunc(RexxObject *)
static RexxInteger * integerTwo
static const wholenumber_t MIN_WHOLENUMBER
RexxObject * new_object(size_t s)
RexxObject * operatorNot(RexxObject *)
bool isInstanceOf(RexxClass *)
RexxSupplier * instanceMethods(RexxClass *)
static wholenumber_t abs(wholenumber_t n)
static RexxInteger * integerMinusOne
RexxString * concat(RexxString *)
RexxNumberString * numberString()
bool isEqual(RexxObject *)