Package gnu.kawa.functions
Class BitwiseOp
java.lang.Object
gnu.mapping.PropertySet
gnu.mapping.Procedure
gnu.mapping.ProcedureN
gnu.kawa.functions.ArithOp
gnu.kawa.functions.BitwiseOp
- All Implemented Interfaces:
Named
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final BitwiseOp
static final BitwiseOp
static final BitwiseOp
static final BitwiseOp
static final BitwiseOp
static final BitwiseOp
static final BitwiseOp
Fields inherited from class gnu.kawa.functions.ArithOp
AND, ASHIFT_GENERAL, ASHIFT_LEFT, ASHIFT_RIGHT, DIVIDE_GENERIC, DIVIDE_INEXACT, IOR, LSHIFT_RIGHT, MODULO, NOT, QUOTIENT, QUOTIENT_EXACT, XOR
Fields inherited from class gnu.mapping.ProcedureN
applyToObject, noArgs
Fields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
Fields inherited from class gnu.mapping.PropertySet
nameKey
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadjustResult
(IntNum value, int code) static int
checkNonNegativeShift
(Procedure proc, int amount) int
numArgs()
ReturnminArgs()|(maxArgs<<12)
.static IntNum
static IntNum
shiftRight
(IntNum value, int count) Methods inherited from class gnu.kawa.functions.ArithOp
isSideEffectFree
Methods inherited from class gnu.mapping.ProcedureN
applyToObject
Methods inherited from class gnu.mapping.Procedure
apply0, apply3, apply4, applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
Field Details
-
and
-
ior
-
xor
-
ashift
-
ashiftl
-
ashiftr
-
not
-
-
Constructor Details
-
BitwiseOp
-
-
Method Details
-
defaultResult
- Overrides:
defaultResult
in classArithOp
-
adjustResult
-
apply1
-
apply2
-
applyN
-
checkNonNegativeShift
-
shiftLeft
-
shiftRight
-
numArgs
public int numArgs()Description copied from class:Procedure
ReturnminArgs()|(maxArgs<<12)
. We use a single virtual function to reduce the number of methods in the system, as well as the number of virtual method table entries. We shift by 12 so the number can normally be represented using a sipush instruction, without requiring a constant pool entry.
-