|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectariba.util.expr.ExprOps
public abstract class ExprOps
This is an abstract class with static methods that define the operations of AribaExpr.
Field Summary |
---|
Fields inherited from interface ariba.util.fieldtype.NumericTypes |
---|
BIGDEC, BIGINT, BOOL, BYTE, CHAR, CUSTOMNUMERICTYPE, DOUBLE, FLOAT, INT, LONG, MIN_REAL_TYPE, NONNUMERIC, NULL, SHORT |
Constructor Summary | |
---|---|
ExprOps()
|
Method Summary | |
---|---|
static java.lang.Object |
add(java.lang.Object v1,
java.lang.Object v2,
java.lang.String v1Type,
java.lang.String v2Type)
|
static java.math.BigDecimal |
bigDecValue(java.lang.Object value)
Evaluates the given object as a BigDecimal. |
static java.math.BigInteger |
bigIntValue(java.lang.Object value)
Evaluates the given object as a BigInteger. |
static java.lang.Object |
binaryAnd(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
binaryOr(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
binaryXor(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
bitNegate(java.lang.Object value)
|
static boolean |
booleanValue(java.lang.Object value)
Evaluates the given object as a boolean: if it is a Boolean object, it's easy; if it's a Number or a Character, returns true for non-zero objects; and otherwise returns true for non-null objects. |
static int |
compareWithConversion(java.lang.Object v1,
java.lang.Object v2)
Compares two objects for equality, even if it has to convert one of them to the other type. |
static int |
compareWithConversion(java.lang.Object v1,
java.lang.Object v2,
boolean equals)
Compares two objects for equality, even if it has to convert one of them to the other type. |
static java.lang.Object |
concatenate(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
convertValue(java.lang.Object value,
java.lang.Class toType)
Returns the value converted numerically to the given class type This method also detects when arrays are being converted and converts the components of one array to the type of the other. |
static java.lang.Object |
divide(java.lang.Object v1,
java.lang.Object v2,
java.lang.String v1Type)
|
static double |
doubleValue(java.lang.Object value)
Evaluates the given object as a double-precision floating-point number. |
static boolean |
equal(java.lang.Object v1,
java.lang.Object v2)
|
static ArithmeticOperations |
getArithmeticOperations(java.lang.String type)
Returns the ArithmeticOperations for the operand
of the given type . |
static ArithmeticOperations |
getArithmeticOperations(java.lang.String type1,
java.lang.String type2)
Returns the ArithmeticOperations for the 2 operands
of the given type1 and type2 . |
static int |
getNumericType(int t1,
int t2,
boolean canBeNonNumeric)
Returns the constant from the NumericTypes interface that best expresses the type of an operation, which can be either numeric or not, on the two given types. |
static int |
getNumericType(java.lang.Object value)
Returns a constant from the NumericTypes interface that represents the numeric type of the given object. |
static int |
getNumericType(java.lang.Object v1,
java.lang.Object v2)
Returns the constant from the NumericTypes interface that best expresses the type of a numeric operation on the two given objects. |
static int |
getNumericType(java.lang.Object v1,
java.lang.Object v2,
boolean canBeNonNumeric)
Returns the constant from the NumericTypes interface that best expresses the type of an operation, which can be either numeric or not, on the two given objects. |
static int |
getNumericType(java.lang.Object v1,
java.lang.Object v2,
java.lang.String type1,
java.lang.String type2,
boolean canBeNonNumeric)
|
static int |
getNumericType(java.lang.Object v,
java.lang.String type,
boolean canBeNonNumeric)
Returns the constant from the NumericTypes interface for the given value> and fieldType . |
static int |
getNumericTypeForName(java.lang.String typeName)
|
static boolean |
greater(java.lang.Object v1,
java.lang.Object v2)
|
static boolean |
in(java.lang.Object v1,
java.lang.Object v2)
|
static boolean |
isEqual(java.lang.Object object1,
java.lang.Object object2)
Returns true if object1 is equal to object2 in either the sense that they are the same object or, if both are non-null if they are equal in the equals() sense. |
static boolean |
isNull(java.lang.Object v1)
|
static boolean |
less(java.lang.Object v1,
java.lang.Object v2)
|
static long |
longValue(java.lang.Object value)
Evaluates the given object as a long integer. |
static java.lang.Object |
multiply(java.lang.Object v1,
java.lang.Object v2,
java.lang.String v1Type,
java.lang.String v2Type)
|
static java.lang.Object |
negate(java.lang.Object value)
|
static java.lang.Number |
newInteger(int type,
long value)
Returns a new Number object of an appropriate type to hold the given integer value. |
static java.lang.Number |
newReal(int type,
double value)
Returns a new Number object of an appropriate type to hold the given real value. |
static void |
registerNumericType(java.lang.String typeName)
Registers the specified type as a non-built-in numeric type. |
static java.lang.Object |
remainder(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
shiftLeft(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.Object |
shiftRight(java.lang.Object v1,
java.lang.Object v2)
|
static java.lang.String |
stringValue(java.lang.Object value)
Evaluates the given object as a String. |
static java.lang.String |
stringValue(java.lang.Object value,
boolean trim)
Evaluates the given object as a String and trims it if the trim flag is true. |
static java.lang.Object |
subtract(java.lang.Object v1,
java.lang.Object v2,
java.lang.String v1Type,
java.lang.String v2Type)
|
static java.lang.Object |
unsignedShiftRight(java.lang.Object v1,
java.lang.Object v2)
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExprOps()
Method Detail |
---|
public static void registerNumericType(java.lang.String typeName)
Notes:
public static int compareWithConversion(java.lang.Object v1, java.lang.Object v2)
v1
- First value to comparev2
- second value to compare
java.lang.IllegalArgumentException
- if the objects are both non-numeric
yet of incompatible types or do not implement Comparable.public static int compareWithConversion(java.lang.Object v1, java.lang.Object v2, boolean equals)
v1
- First value to comparev2
- second value to compare
java.lang.IllegalArgumentException
- if the objects are both non-numeric
yet of incompatible types or do not implement Comparable.public static boolean isEqual(java.lang.Object object1, java.lang.Object object2)
equals()
sense.
object1
- First object to compareobject2
- Second object to compare
public static boolean booleanValue(java.lang.Object value)
value
- an object to interpret as a boolean
public static long longValue(java.lang.Object value) throws java.lang.NumberFormatException
value
- an object to interpret as a long integer
java.lang.NumberFormatException
- if the given object can't be understood as a long integerpublic static double doubleValue(java.lang.Object value) throws java.lang.NumberFormatException
value
- an object to interpret as a double
java.lang.NumberFormatException
- if the given object can't be understood as a doublepublic static java.math.BigInteger bigIntValue(java.lang.Object value) throws java.lang.NumberFormatException
value
- an object to interpret as a BigInteger
java.lang.NumberFormatException
- if the given object can't be understood as a BigIntegerpublic static java.math.BigDecimal bigDecValue(java.lang.Object value) throws java.lang.NumberFormatException
value
- an object to interpret as a BigDecimal
java.lang.NumberFormatException
- if the given object can't be understood as a BigDecimalpublic static java.lang.String stringValue(java.lang.Object value, boolean trim)
value
- an object to interpret as a String
public static java.lang.String stringValue(java.lang.Object value)
value
- an object to interpret as a String
public static int getNumericType(java.lang.Object value)
value
- an object that needs to be interpreted as a number
public static int getNumericTypeForName(java.lang.String typeName)
public static java.lang.Object convertValue(java.lang.Object value, java.lang.Class toType)
value
- an object to be converted to the given typetoType
- class type to be converted to
public static int getNumericType(java.lang.Object v1, java.lang.Object v2)
v1
- one argument to a numeric operatorv2
- the other argument
public static int getNumericType(int t1, int t2, boolean canBeNonNumeric)
t1
- type of one argument to an operatort2
- type of the other argumentcanBeNonNumeric
- whether the operator can be interpreted as non-numeric
public static int getNumericType(java.lang.Object v1, java.lang.Object v2, boolean canBeNonNumeric)
v1
- one argument to an operatorv2
- the other argumentcanBeNonNumeric
- whether the operator can be interpreted as non-numeric
public static int getNumericType(java.lang.Object v, java.lang.String type, boolean canBeNonNumeric)
value>
and fieldType
.
public static int getNumericType(java.lang.Object v1, java.lang.Object v2, java.lang.String type1, java.lang.String type2, boolean canBeNonNumeric)
public static java.lang.Number newInteger(int type, long value)
type
- the nominal numeric type of the result, a constant from the NumericTypes interfacevalue
- the integer value to convert to a Number object
public static java.lang.Number newReal(int type, double value)
type
- the nominal numeric type of the result, a constant from the NumericTypes interfacevalue
- the real value to convert to a Number object
public static java.lang.Object binaryOr(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object binaryXor(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object binaryAnd(java.lang.Object v1, java.lang.Object v2)
public static boolean equal(java.lang.Object v1, java.lang.Object v2)
public static boolean less(java.lang.Object v1, java.lang.Object v2)
public static boolean greater(java.lang.Object v1, java.lang.Object v2)
public static boolean in(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object shiftLeft(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object shiftRight(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object unsignedShiftRight(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object add(java.lang.Object v1, java.lang.Object v2, java.lang.String v1Type, java.lang.String v2Type)
public static java.lang.Object concatenate(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object subtract(java.lang.Object v1, java.lang.Object v2, java.lang.String v1Type, java.lang.String v2Type)
public static java.lang.Object multiply(java.lang.Object v1, java.lang.Object v2, java.lang.String v1Type, java.lang.String v2Type)
public static java.lang.Object divide(java.lang.Object v1, java.lang.Object v2, java.lang.String v1Type)
public static boolean isNull(java.lang.Object v1)
public static ArithmeticOperations getArithmeticOperations(java.lang.String type1, java.lang.String type2)
ArithmeticOperations
for the 2 operands
of the given type1
and type2
.
public static ArithmeticOperations getArithmeticOperations(java.lang.String type)
ArithmeticOperations
for the operand
of the given type
. If there is no ArithmeticOperations
for the given type
, null
is returned.
public static java.lang.Object remainder(java.lang.Object v1, java.lang.Object v2)
public static java.lang.Object negate(java.lang.Object value)
public static java.lang.Object bitNegate(java.lang.Object value)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |