| Modifier and Type | Field and Description |
|---|---|
| protected ArgumentDescriptor[] | |
| private IRBlockBody | body
Added for interp/JIT purposes |
| private static final ByteList | |
| private static final ByteList | |
| public final int | |
| private boolean | |
| private Signature | |
| private IterNode |
| Access | Constructor and Description |
|---|---|
| protected | IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, ByteList prefix, int coverageMode)
|
| protected | IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, ByteList prefix)
|
| protected | IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, int closureId, ByteList fullName)
|
| protected | |
| public | IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature)
|
| public | IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, int coverageMode)
|
| public | |
| public | |
| public | |
| public |
| Modifier and Type | Method and Description |
|---|---|
| public InterpreterContext | allocateInterpreterContext(List<Instr> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags)
Overrides org. Make version specific to scope which needs it (e.g. Closure vs non-closure). |
| public InterpreterContext | allocateInterpreterContext(Supplier<List<Instr>> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags)
Overrides org. Make version specific to scope which needs it (e.g. Closure vs non-closure). |
| protected IRClosure | |
| public IRClosure | |
| public IRMethod | |
| protected LocalVariable | findExistingLocalVariable(RubySymbol name, int scopeDepth)
Overrides org.
|
| public ArgumentDescriptor[] | |
| public BlockBody | |
| public LocalVariable | getLocalVariable(RubySymbol name, int depth)
Overrides org. Find or create a local variable. |
| public Label | |
| public LocalVariable | |
| public int | |
| public IRScopeType | |
| public Signature | |
| public boolean | |
| public boolean | |
| public boolean | |
| public boolean | |
| public void | |
| public void | setArgumentDescriptors(ArgumentDescriptor[] argDesc)
Set upon completion of IRBuild of this IRClosure. |
| public void | |
| public void | |
| public void | |
| public String |
| argDesc | back to summary |
|---|---|
| protected ArgumentDescriptor[] argDesc | |
| body | back to summary |
|---|---|
| private IRBlockBody body Added for interp/JIT purposes | |
| CLOSURE | back to summary |
|---|---|
| private static final ByteList CLOSURE | |
| CLOSURE_CLONE | back to summary |
|---|---|
| private static final ByteList CLOSURE_CLONE | |
| closureId | back to summary |
|---|---|
| public final int closureId | |
| isEND | back to summary |
|---|---|
| private boolean isEND | |
| signature | back to summary |
|---|---|
| private Signature signature | |
| source | back to summary |
|---|---|
| private IterNode source | |
| IRClosure | back to summary |
|---|---|
| protected IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, ByteList prefix, int coverageMode) | |
| IRClosure | back to summary |
|---|---|
| protected IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, ByteList prefix) | |
| IRClosure | back to summary |
|---|---|
| protected IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, int closureId, ByteList fullName) | |
| IRClosure | back to summary |
|---|---|
| protected IRClosure(IRClosure c, IRScope lexicalParent, int closureId, ByteList fullName) Used by cloning code for inlining | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature) | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, int coverageMode) | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, ByteList prefix, int coverageMode) | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, ByteList prefix) | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, ByteList prefix, boolean isBeginEndBlock) | |
| IRClosure | back to summary |
|---|---|
| public IRClosure(IRManager manager, IRScope lexicalParent, int lineNumber, StaticScope staticScope, Signature signature, ByteList prefix, boolean isBeginEndBlock, int coverageMode) | |
| allocateInterpreterContext | back to summary |
|---|---|
| public InterpreterContext allocateInterpreterContext(List<Instr> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) Overrides org. Doc from org. Make version specific to scope which needs it (e.g. Closure vs non-closure).
| |
| allocateInterpreterContext | back to summary |
|---|---|
| public InterpreterContext allocateInterpreterContext(Supplier<List<Instr>> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) Overrides org. Doc from org. Make version specific to scope which needs it (e.g. Closure vs non-closure).
| |
| cloneForInlining | back to summary |
|---|---|
| protected IRClosure cloneForInlining(CloneInfo ii, IRClosure clone) | |
| cloneForInlining | back to summary |
|---|---|
| public IRClosure cloneForInlining(CloneInfo ii) | |
| convertToMethod | back to summary |
|---|---|
| public IRMethod convertToMethod(ByteList name) | |
| findExistingLocalVariable | back to summary |
|---|---|
| protected LocalVariable findExistingLocalVariable(RubySymbol name, int scopeDepth) Overrides org.
| |
| getArgumentDescriptors | back to summary |
|---|---|
| public ArgumentDescriptor[] getArgumentDescriptors() | |
| getBlockBody | back to summary |
|---|---|
| public BlockBody getBlockBody() | |
| getLocalVariable | back to summary |
|---|---|
| public LocalVariable getLocalVariable(RubySymbol name, int depth) Overrides org. Doc from org. Find or create a local variable. By default, scopes are assumed to only check current depth. Blocks/Closures override this because they have special nesting rules.
| |
| getNewLabel | back to summary |
|---|---|
| public Label getNewLabel() Overrides org.
| |
| getNewLocalVariable | back to summary |
|---|---|
| public LocalVariable getNewLocalVariable(RubySymbol name, int depth) Overrides org. | |
| getNextClosureId | back to summary |
|---|---|
| public int getNextClosureId() Overrides org.
| |
| getScopeType | back to summary |
|---|---|
| public IRScopeType getScopeType() Implements abstract org.
| |
| getSignature | back to summary |
|---|---|
| public Signature getSignature() | |
| isEND | back to summary |
|---|---|
| public boolean isEND() | |
| isNestedClosuresSafeForMethodConversion | back to summary |
|---|---|
| public boolean isNestedClosuresSafeForMethodConversion() | |
| isTopLocalVariableScope | back to summary |
|---|---|
| public boolean isTopLocalVariableScope() Overrides org.
| |
| isWhereFlipFlopStateVariableIs | back to summary |
|---|---|
| public boolean isWhereFlipFlopStateVariableIs() Overrides org. | |
| persistScopeHeader | back to summary |
|---|---|
| public void persistScopeHeader(IRWriterEncoder file) Overrides org. | |
| setArgumentDescriptors | back to summary |
|---|---|
| public void setArgumentDescriptors(ArgumentDescriptor[] argDesc) Set upon completion of IRBuild of this IRClosure. | |
| setIsEND | back to summary |
|---|---|
| public void setIsEND() | |
| setSignature | back to summary |
|---|---|
| public void setSignature(Signature signature) | |
| setSource | back to summary |
|---|---|
| public void setSource(IterNode iter) | |
| toStringBody | back to summary |
|---|---|
| public String toStringBody() | |