public abstract class Function extends StatementBaseNoFinal implements org.objectweb.asm.Opcodes, IFunction, HasBody
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM4, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7
ARRAY_INDEX, PAGE_TYPE_COMPONENT, PAGE_TYPE_INTERFACE, PAGE_TYPE_REGULAR, VALUE_INDEX
Constructor and Description |
---|
Function(Page page,
Expression name,
Expression returnType,
Expression returnFormat,
Expression output,
Expression bufferOutput,
int access,
Expression displayName,
Expression description,
Expression hint,
Expression secureJson,
Expression verifyClient,
Expression localMode,
Literal cachedWithin,
boolean _abstract,
boolean _final,
Body body,
Position start,
Position end) |
Function(Page page,
String name,
int access,
String returnType,
Body body,
Position start,
Position end) |
Modifier and Type | Method and Description |
---|---|
void |
_writeOut(BytecodeContext bc)
write out the stament to the adater
|
abstract void |
_writeOut(BytecodeContext bc,
int pageType) |
void |
addArgument(Expression name,
Expression type,
Expression required,
Expression defaultValue,
ExprBoolean passByReference,
Expression displayName,
Expression hint,
Map meta) |
void |
addArgument(String name,
String type,
boolean required,
Expression defaultValue) |
void |
addAttribute(Attribute attr) |
void |
createUDF(BytecodeContext bc,
int index,
boolean closure) |
void |
createUDFProperties(BytecodeContext bc,
int index,
boolean closure) |
List<Argument> |
getArguments() |
Body |
getBody() |
void |
loadUDFProperties(BytecodeContext bc,
int valueIndex,
int arrayIndex,
boolean closure) |
void |
setHint(String hint) |
void |
setMetaData(Map<String,Attribute> metadata) |
static ExprInt |
toLocalMode(Expression expr,
ExprInt defaultValue) |
void |
writeOut(BytecodeContext bc,
int type) |
getFlowControlFinal
getDescendantCount, getEnd, getParent, getStart, hasFlowController, setEnd, setHasFlowController, setParent, setStart, writeOut
public Function(Page page, String name, int access, String returnType, Body body, Position start, Position end)
public Function(Page page, Expression name, Expression returnType, Expression returnFormat, Expression output, Expression bufferOutput, int access, Expression displayName, Expression description, Expression hint, Expression secureJson, Expression verifyClient, Expression localMode, Literal cachedWithin, boolean _abstract, boolean _final, Body body, Position start, Position end)
public static ExprInt toLocalMode(Expression expr, ExprInt defaultValue)
public final void writeOut(BytecodeContext bc, int type) throws BytecodeException
writeOut
in interface IFunction
BytecodeException
IFunction.writeOut(lucee.transformer.bytecode.BytecodeContext, int)
public final void _writeOut(BytecodeContext bc) throws BytecodeException
StatementBase
_writeOut
in class StatementBase
BytecodeException
StatementBase._writeOut(lucee.transformer.bytecode.BytecodeContext)
public abstract void _writeOut(BytecodeContext bc, int pageType) throws BytecodeException
BytecodeException
public final void loadUDFProperties(BytecodeContext bc, int valueIndex, int arrayIndex, boolean closure) throws BytecodeException
BytecodeException
public final void createUDFProperties(BytecodeContext bc, int index, boolean closure) throws BytecodeException
BytecodeException
public final void createUDF(BytecodeContext bc, int index, boolean closure) throws BytecodeException
BytecodeException
public final void addArgument(String name, String type, boolean required, Expression defaultValue)
public final void addArgument(Expression name, Expression type, Expression required, Expression defaultValue, ExprBoolean passByReference, Expression displayName, Expression hint, Map meta)
public final List<Argument> getArguments()
public final void setMetaData(Map<String,Attribute> metadata)
public final void addAttribute(Attribute attr) throws TemplateException
TemplateException
Copyright © 2015 Lucee