public class UnsignedByteToken extends ScalarToken
Overflow and underflow are handled by returning the result of all operations modulo 256. Thus, the result is always in the range 0 through 255. Likewise, constructors of this class generate tokens whose values are the argument modulo 256. Note, for example, that UnsignedByteToken((byte)(-100)) generates a UnsignedByteToken representing the value 156, which is -100 modulo 256.
Note, also, that the byteValue() method returns a Java byte in the range -128 through 127. This is in contrast to the intValue(), longValue(), doubleValue(), and complexValue() methods which all return values in the range 0 through 255. The value returned by byteValue() is the value represented by the UnsignedByteToken but with 256 subtracted if this value is greater than 127. In other words, the result and the argument are equal modulo 256.
Red (winthrop) |
Yellow (cxh) ONE, ZERO, nil Token |
Modifier and Type | Field and Description |
---|---|
static UnsignedByteToken |
NIL
A token that represents a missing value.
|
static UnsignedByteToken |
ONE
A UnsignedByteToken with the value 1.
|
static UnsignedByteToken |
ZERO
A UnsignedByteToken with the value 0.
|
_unitCategoryExponents
Constructor and Description |
---|
UnsignedByteToken()
Construct a token with byte 0.
|
UnsignedByteToken(byte value)
Construct a UnsignedByteToken with the specified byte value.
|
UnsignedByteToken(int value)
Construct a UnsignedByteToken with the specified integer value.
|
UnsignedByteToken(java.lang.String init)
Construct a UnsignedByteToken from the specified string.
|
Modifier and Type | Method and Description |
---|---|
protected ScalarToken |
_absolute()
Return a ScalarToken containing the absolute value of the
value of this token.
|
protected ScalarToken |
_add(ScalarToken rightArgument)
Return a new token whose value is the value of the argument
Token added to the value of this Token.
|
protected ScalarToken |
_bitwiseAnd(ScalarToken rightArgument)
Returns a token representing the bitwise AND of this token and
the given token.
|
protected ScalarToken |
_bitwiseNot()
Returns a token representing the bitwise NOT of this token.
|
protected ScalarToken |
_bitwiseOr(ScalarToken rightArgument)
Returns a token representing the bitwise OR of this token and
the given token.
|
protected ScalarToken |
_bitwiseXor(ScalarToken rightArgument)
Returns a token representing the bitwise XOR of this token and
the given token.
|
protected ScalarToken |
_divide(ScalarToken rightArgument)
Return a new token whose value is the value of this token
divided by the value of the argument token.
|
protected BooleanToken |
_isCloseTo(ScalarToken rightArgument,
double epsilon)
Test whether the value of this token is close to the first argument,
where "close" means that the distance between them is less than
or equal to the second argument.
|
protected BooleanToken |
_isLessThan(ScalarToken rightArgument)
Test for ordering of the values of this Token and the argument
Token.
|
protected ScalarToken |
_modulo(ScalarToken rightArgument)
Return a new token whose value is the value of this token
modulo the value of the argument token.
|
protected ScalarToken |
_multiply(ScalarToken rightArgument)
Return a new token whose value is the value of this token
multiplied by the value of the argument token.
|
protected ScalarToken |
_subtract(ScalarToken rightArgument)
Return a new token whose value is the value of the argument
token subtracted from the value of this token.
|
byte |
byteValue()
Return the value in this token as a byte, modulo 256.
|
Complex |
complexValue()
Return the value of this token as a Complex.
|
static UnsignedByteToken |
convert(Token token)
Convert the specified token into an instance of
UnsignedByteToken.
|
double |
doubleValue()
Return the value in the token as a double.
|
boolean |
equals(java.lang.Object object)
Return true if the class of the argument is UnsignedByteToken,
and it has the same value as this token.
|
Type |
getType()
Return the type of this token.
|
int |
hashCode()
Return a hash code value for this token.
|
int |
intValue()
Return the value in the token as an integer.
|
boolean |
isNil()
Return true if the token is nil, (aka null or missing).
|
ScalarToken |
leftShift(int bits)
Returns a token representing the result of shifting the bits
of this token towards the most significant bit, filling the
least significant bits with zeros.
|
ScalarToken |
logicalRightShift(int bits)
Returns a token representing the result of shifting the bits
of this token towards the least significant bit, filling the
most significant bits with zeros.
|
long |
longValue()
Return the value in the token as a long.
|
Token |
one()
Returns an UnsignedByteToken with value 1.
|
ScalarToken |
rightShift(int bits)
Returns a token representing the result of shifting the bits
of this token towards the least significant bit, filling the
most significant bits with the sign of the value.
|
short |
shortValue()
Return the value in the token as a short.
|
java.lang.String |
toString()
Return the value of this token as a string that can be parsed
by the expression language to recover a token with the same value.
|
static short |
unsignedConvert(byte value)
Convert a byte to an integer, treating the byte as an unsigned
value in the range 0 through 255.
|
Token |
zero()
Returns an UnsignedByteToken with value 0.
|
_addCategoryExponents, _areUnitsEqual, _copyOfCategoryExponents, _isEqualTo, _isUnitless, _subtractCategoryExponents, absolute, add, addReverse, bitwiseAnd, bitwiseNot, bitwiseOr, bitwiseXor, divide, divideReverse, fixValue, floatValue, inUnitsOf, isCloseTo, isEqualTo, isGreaterThan, isLessThan, isLessThan, modulo, moduloReverse, multiply, multiplyReverse, setUnitCategory, subtract, subtractReverse, unitsString
isCloseTo, notSupportedConversionMessage, notSupportedIncomparableConversionMessage, notSupportedIncomparableMessage, notSupportedMessage, notSupportedNullNilStringMessage, pow, zeroReturnType
public static final UnsignedByteToken NIL
public static final UnsignedByteToken ONE
public static final UnsignedByteToken ZERO
public UnsignedByteToken()
public UnsignedByteToken(byte value)
value
- The specified value.public UnsignedByteToken(int value)
value
- The specified value.public UnsignedByteToken(java.lang.String init) throws IllegalActionException
init
- The initialization string, which is an integer from
0 to 255. -1 and 256 are illegal values.IllegalActionException
- If the token could not
be created from the given string.public byte byteValue()
byteValue
in class ScalarToken
public Complex complexValue()
complexValue
in class ScalarToken
public static UnsignedByteToken convert(Token token) throws IllegalActionException
NIL
is returned. Otherwise, if the argument is
above UnsignedByteToken in the type hierarchy or is
incomparable with UnsignedByteToken, an exception is thrown
with a message stating that either the conversion is not
supported, or the types are incomparable. If none of the
above conditions is met, then the argument must be below
UnsignedByteToken in the type hierarchy. However, not such
types exist at this time, so an exception is thrown with a
message stating simply that the conversion is not supported.token
- The token to be converted to a UnsignedByteToken.IllegalActionException
- If the conversion
cannot be carried out.public double doubleValue()
doubleValue
in class ScalarToken
public boolean equals(java.lang.Object object)
equals
in class java.lang.Object
object
- An instance of Object.public Type getType()
getType
in class ScalarToken
public int hashCode()
hashCode
in class java.lang.Object
public int intValue()
intValue
in class ScalarToken
public boolean isNil()
public ScalarToken leftShift(int bits)
leftShift
in class ScalarToken
bits
- The number of bits to shift.NIL
is returned.public ScalarToken logicalRightShift(int bits)
logicalRightShift
in class ScalarToken
bits
- The number of bits to shift.NIL
is returned.public long longValue()
longValue
in class ScalarToken
public Token one()
public ScalarToken rightShift(int bits)
rightShift
in class ScalarToken
bits
- The number of bits to shift.NIL
is returned.public short shortValue()
shortValue
in class ScalarToken
public java.lang.String toString()
toString
in class Token
ScalarToken.unitsString()
public static short unsignedConvert(byte value)
value
- The byte to convert to an unsigned byte.public Token zero()
protected ScalarToken _absolute()
_absolute
in class ScalarToken
protected ScalarToken _add(ScalarToken rightArgument)
_add
in class ScalarToken
rightArgument
- The token to add to this token.protected ScalarToken _bitwiseAnd(ScalarToken rightArgument)
_bitwiseAnd
in class ScalarToken
rightArgument
- The UnsignedByteToken to bitwise AND with
this one.protected ScalarToken _bitwiseNot()
_bitwiseNot
in class ScalarToken
protected ScalarToken _bitwiseOr(ScalarToken rightArgument)
_bitwiseOr
in class ScalarToken
rightArgument
- The UnsignedByteToken to bitwise OR with
this one.protected ScalarToken _bitwiseXor(ScalarToken rightArgument)
_bitwiseXor
in class ScalarToken
rightArgument
- The UnsignedByteToken to bitwise XOR with
this one.protected ScalarToken _divide(ScalarToken rightArgument)
_divide
in class ScalarToken
rightArgument
- The token to divide this token by.protected BooleanToken _isCloseTo(ScalarToken rightArgument, double epsilon)
_isCloseTo
in class ScalarToken
rightArgument
- The token to compare to this token.epsilon
- The distance.protected BooleanToken _isLessThan(ScalarToken rightArgument)
_isLessThan
in class ScalarToken
rightArgument
- The token to add to this token.protected ScalarToken _modulo(ScalarToken rightArgument)
_modulo
in class ScalarToken
rightArgument
- The token to modulo this token by.protected ScalarToken _multiply(ScalarToken rightArgument)
_multiply
in class ScalarToken
rightArgument
- The token to multiply this token by.protected ScalarToken _subtract(ScalarToken rightArgument)
_subtract
in class ScalarToken
rightArgument
- The token to subtract from this token.