public class RelativeStep extends MethodProc implements Inlineable
| Modifier and Type | Field and Description |
|---|---|
static RelativeStep |
relativeStep |
applyToConsumerDefaultMP, argTypes, NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_GUARD_FALSE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGS, NO_MATCH_UNUSED_KEYWORD, THROW_ON_EXCEPTION applyToObject, noArgs applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey nameKey | Modifier and Type | Method and Description |
|---|---|
static java.lang.Object |
applyToConsumer (Procedure proc,
CallContext ctx) |
void |
compile (ApplyExp exp,
Compilation comp,
Target target) |
static TreeScanner |
extractStep (Expression exp) |
Type |
getReturnType (Expression[] args)
Semi-deprecated - instead should be set at Inline time.
|
int |
numArgs ()
Return
minArgs()|(maxArgs<<12). |
applyToConsumerDefaultMP, getParameterType, isApplicable, matchFailAsException, mostSpecific, numParameters, overrideEquivalent, resolveParameterTypes applyToObject apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, 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 RelativeStep relativeStep
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.public static java.lang.Object applyToConsumer(Procedure proc, CallContext ctx) throws java.lang.Throwable
java.lang.Throwablepublic void compile(ApplyExp exp, Compilation comp, Target target)
compile in interface Inlineable public Type getReturnType(Expression[] args)
Procedure getReturnType in class Procedure public static TreeScanner extractStep(Expression exp)