public class NumberPredicate extends Procedure1
| Modifier and Type | Field and Description |
|---|---|
static int |
EVEN |
static int |
ODD |
applyToObject applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey nameKey | Constructor and Description |
|---|
NumberPredicate (Language language,
java.lang.String name,
int op) |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
apply1 (java.lang.Object arg1) |
protected Language |
getLanguage () |
static boolean |
isEven (java.lang.Object obj) |
static boolean |
isOdd (java.lang.Object obj) |
static boolean |
isOddEven (boolean isOdd,
java.lang.Object obj) |
int |
numArgs ()
Return
minArgs()|(maxArgs<<12). |
apply0, apply2, apply3, apply4, applyN, applyToObject applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final int ODD
public static final int EVEN
public NumberPredicate(Language language, java.lang.String name, int op)
protected final Language getLanguage()
public static boolean isOdd(java.lang.Object obj)
public static boolean isEven(java.lang.Object obj)
public static boolean isOddEven(boolean isOdd, java.lang.Object obj)
public java.lang.Object apply1(java.lang.Object arg1)
apply1 in class Procedure1 public int numArgs()
Procedure minArgs()|(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.numArgs in class Procedure1