|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.glassfish.pfl.dynamic.codegen.impl.EmitterFactory
public final class EmitterFactory
This class provides methods that allow the construction of an object that can later be used to emit a bytecode. This is useful when multiple visitors are needed for first preparing an AST, then generating the bytecode.
| Nested Class Summary | |
|---|---|
static class |
EmitterFactory.CompoundEmitter
|
static interface |
EmitterFactory.Emitter
Simple wrapper class around a UnaryVoidFunction. |
static class |
EmitterFactory.NullEmitter
|
static class |
EmitterFactory.SimpleEmitter
|
| Method Summary | |
|---|---|
static EmitterFactory.Emitter |
makeEmitter(ExpressionFactory.ArrayIndexExpression expr,
boolean isStore)
Create an emitter that generates the instruction needed to either store the TOS value into an array (aastore) (isStore==true) or push the array element's value onto the stack (aaload) (isStore==false). |
static EmitterFactory.Emitter |
makeEmitter(ExpressionFactory.ArrayLengthExpression expr)
|
static EmitterFactory.Emitter |
makeEmitter(ExpressionFactory.NonStaticFieldAccessExpression expr,
boolean isStore)
Create an emitter that generates the instruction needed to either store the TOS value into the non-static field (isStore==true) or push the non-static fields's value onto the stack (isStore==false). |
static EmitterFactory.Emitter |
makeEmitter(ExpressionFactory.StaticFieldAccessExpression expr,
boolean isStore)
Create an emitter that generates the instruction needed to either store the TOS value into the static field (isStore==true) or push the static fields's value onto the stack (isStore==false). |
static EmitterFactory.Emitter |
makeEmitter(Variable var,
boolean isStore)
Create an emitter that generates the instruction needed to either store the TOS value into the variable (isStore==true) or push the variable's value onto the stack (isStore==false). |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public static EmitterFactory.Emitter makeEmitter(Variable var,
boolean isStore)
public static EmitterFactory.Emitter makeEmitter(ExpressionFactory.NonStaticFieldAccessExpression expr,
boolean isStore)
public static EmitterFactory.Emitter makeEmitter(ExpressionFactory.StaticFieldAccessExpression expr,
boolean isStore)
public static EmitterFactory.Emitter makeEmitter(ExpressionFactory.ArrayIndexExpression expr,
boolean isStore)
public static EmitterFactory.Emitter makeEmitter(ExpressionFactory.ArrayLengthExpression expr)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||