public class CurryExp extends ApplyExp
firstKeywordArgIndex, firstSpliceArg, INLINE_IF_CONSTANT, MAY_CONTAIN_BACK_JUMP, nextCall, numKeywordArgs, TAILCALLflags, NEXT_AVAIL_FLAG, noExpressions, type, VALIDATEDcompilerKey, compilerXKey, validateApplyKey, validateXApplyKeynameKey| Constructor and Description |
|---|
CurryExp(Procedure currier,
Procedure actual,
Expression... initial) |
| Modifier and Type | Method and Description |
|---|---|
protected Type |
calculateType() |
Expression |
validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl)
Apply inlining transformations on a given ApplyExp.
|
adjustSplice, apply, compile, compile, deepCopy, getArg, getArgCount, getArgs, getFunction, getFunctionValue, inlineIfConstant, inlineIfConstant, isAppendValues, isInlineable, isSimple, isSimple, isSimple, isTailCall, mustCompile, print, setArg, setArgs, setFuncArgs, setFuncArgs, setFunction, setFunction, setTailCall, side_effects, spliceCount, toString, visit, visitArgs, visitChildrenapply0, checkLiteralKeyword, compile, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getSystemId, getType, getTypeRaw, isSingleValue, isStableSourceLocation, makeWhile, match0, maybeSetLine, neverReturns, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLocation, setType, valueIfConstantapply, check0, check1, check2, check3, check4, checkArgCount, checkN, getReturnType, getSetter, getSourceLocation, isSideEffectFree, match1, match2, match3, match4, matchN, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocationgetName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbolpublic CurryExp(Procedure currier, Procedure actual, Expression... initial)
protected Type calculateType()
calculateType in class ApplyExppublic Expression validateApply(ApplyExp exp, InlineCalls visitor, Type required, Declaration decl)
ExpressionvalidateApply in class Expressionexp - an application whose function expression can be simplified
to this expression.visitor - the context for the current inlining passdecl - if non-null, a Declaration bound to this expression.