|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jruby.runtime.BlockBody
org.jruby.runtime.InterpretedBlock
org.jruby.runtime.SharedScopeBlock
public class SharedScopeBlock
Represents the live state of a for or END construct in Ruby. This is different from an ordinary block in that it does not have its own scoped variables. It leeches those from the next outer scope. Because of this we do not set up, clone, nor tear down scope-related stuff. Also because of this we do not need to clone the block since it state does not change.
| Field Summary |
|---|
| Fields inherited from class org.jruby.runtime.BlockBody |
|---|
argumentType, ARRAY, MULTIPLE_ASSIGNMENT, NULL_BODY, SINGLE_RESTARG, ZERO_ARGS |
| Constructor Summary | |
|---|---|
protected |
SharedScopeBlock(IterNode iterNode)
|
| Method Summary | |
|---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject[] args,
IRubyObject replacementSelf,
Binding binding,
Block.Type type)
|
Block |
cloneBlock(Binding binding)
|
static Block |
newInterpretedSharedScopeClosure(ThreadContext context,
IterNode iterNode,
DynamicScope dynamicScope,
IRubyObject self)
|
protected Frame |
pre(ThreadContext context,
RubyModule klass,
Binding binding)
|
| Methods inherited from class org.jruby.runtime.InterpretedBlock |
|---|
arity, getIterNode, getStaticScope, newInterpretedClosure, newInterpretedClosure, newInterpretedClosure, post, yield, yield |
| Methods inherited from class org.jruby.runtime.BlockBody |
|---|
asArgumentType, call, getArgumentType, getArgumentTypeWackyHack, isGiven, prepareArgumentsForCall |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected SharedScopeBlock(IterNode iterNode)
| Method Detail |
|---|
public static Block newInterpretedSharedScopeClosure(ThreadContext context,
IterNode iterNode,
DynamicScope dynamicScope,
IRubyObject self)
protected Frame pre(ThreadContext context,
RubyModule klass,
Binding binding)
pre in class InterpretedBlock
public IRubyObject call(ThreadContext context,
IRubyObject[] args,
IRubyObject replacementSelf,
Binding binding,
Block.Type type)
public Block cloneBlock(Binding binding)
cloneBlock in class InterpretedBlock
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||