public class ScopeInfo : CompilerGeneratedClass
{
- protected readonly AnonymousMethodHost RootScope;
+ protected readonly RootScopeInfo RootScope;
public readonly int ID = ++next_id;
public Block ScopeBlock;
static int next_id;
public ScopeInfo (IAnonymousMethodHost root, Block block)
- : base ((AnonymousMethodHost) root, null, 0, block.StartLocation)
+ : base ((RootScopeInfo) root, null, 0, block.StartLocation)
{
- this.RootScope = (AnonymousMethodHost) root;
+ this.RootScope = (RootScopeInfo) root;
ScopeBlock = block;
Report.Debug (64, "NEW SCOPE", this, root, block);
GenericMethod generic, Location loc)
: base (parent, generic, 0, loc)
{
- RootScope = (AnonymousMethodHost) this;
+ RootScope = (RootScopeInfo) this;
ScopeBlock = toplevel;
Report.Debug (64, "NEW ROOT SCOPE", this);
public static void EmitScopeInstance (EmitContext ec, ScopeInfo scope,
ToplevelBlock toplevel)
{
- AnonymousMethodHost root_scope = (AnonymousMethodHost) toplevel.AnonymousMethodHost;
+ RootScopeInfo root_scope = (RootScopeInfo) toplevel.AnonymousMethodHost;
root_scope.EmitScopeInstance (ec);
while (root_scope != scope.RootScope) {
public static bool CompleteContexts (IAnonymousMethodHost amh, Block container)
{
- AnonymousMethodHost host = (AnonymousMethodHost) amh;
+ RootScopeInfo host = (RootScopeInfo) amh;
if (host != null)
host.LinkScopes ();
}
protected class CapturedThis : CapturedVariable {
- public CapturedThis (AnonymousMethodHost host)
+ public CapturedThis (RootScopeInfo host)
: base (host, "<>THIS", host.ParentType)
{ }
}
void EmitScopeInstance (EmitContext ec);
}
- public class AnonymousMethodHost : ScopeInfo, IAnonymousMethodHost
+ public class RootScopeInfo : ScopeInfo, IAnonymousMethodHost
{
- public AnonymousMethodHost (ToplevelBlock toplevel, TypeContainer parent,
- GenericMethod generic, Location loc)
+ public RootScopeInfo (ToplevelBlock toplevel, TypeContainer parent,
+ GenericMethod generic, Location loc)
: base (toplevel, parent, generic, loc)
{
scopes = new ArrayList ();
get { return false; }
}
- public AnonymousMethodHost ParentHost {
- get { return Parent as AnonymousMethodHost; }
+ public RootScopeInfo ParentHost {
+ get { return Parent as RootScopeInfo; }
}
public Type ParentType {
protected override ScopeInitializer CreateScopeInitializer ()
{
- return new AnonymousMethodHostInitializer (this);
+ return new RootScopeInitializer (this);
}
protected override bool DefineNestedTypes ()
protected class TheCtor : Statement
{
- AnonymousMethodHost host;
+ RootScopeInfo host;
- public TheCtor (AnonymousMethodHost host)
+ public TheCtor (RootScopeInfo host)
{
this.host = host;
}
}
}
- protected class AnonymousMethodHostInitializer : ScopeInitializer
+ protected class RootScopeInitializer : ScopeInitializer
{
- AnonymousMethodHost host;
+ RootScopeInfo host;
- public AnonymousMethodHostInitializer (AnonymousMethodHost host)
+ public RootScopeInitializer (RootScopeInfo host)
: base (host)
{
this.host = host;
}
- public AnonymousMethodHost Host {
+ public RootScopeInfo Host {
get { return host; }
}
get;
}
- AnonymousMethodHost RootScope {
+ RootScopeInfo RootScope {
get;
}
get { return anonymous; }
}
- public AnonymousMethodHost RootScope {
+ public RootScopeInfo RootScope {
get { return root_scope; }
}
}
ArrayList children;
- AnonymousMethodHost root_scope;
+ RootScopeInfo root_scope;
static int next_index;
get { return method; }
}
- public abstract AnonymousMethodHost RootScope {
+ public abstract RootScopeInfo RootScope {
get;
}
// more than once, due to the way Convert.ImplicitConversion works
//
Expression anonymous_delegate;
- AnonymousMethodHost root_scope;
+ RootScopeInfo root_scope;
- public AnonymousMethod (AnonymousMethod parent, AnonymousMethodHost root_scope,
+ public AnonymousMethod (AnonymousMethod parent, RootScopeInfo root_scope,
TypeContainer host, GenericMethod generic,
Parameters parameters, Block container,
ToplevelBlock block, Type return_type, Type delegate_type,
this.root_scope = root_scope;
}
- public override AnonymousMethodHost RootScope {
+ public override RootScopeInfo RootScope {
get { return root_scope; }
}
ToplevelBlock child;
GenericMethod generic;
FlowBranchingToplevel top_level_branching;
- AnonymousMethodHost anonymous_method_host;
+ RootScopeInfo anonymous_method_host;
public bool HasVarargs {
get { return (flags & Flags.HasVarargs) != 0; }
return true;
}
- public AnonymousMethodHost CreateAnonymousMethodHost (TypeContainer host)
+ public RootScopeInfo CreateAnonymousMethodHost (TypeContainer host)
{
if (anonymous_method_host != null)
return anonymous_method_host;
if (Container != null)
- anonymous_method_host = new AnonymousMethodHost (
+ anonymous_method_host = new RootScopeInfo (
this, Container.anonymous_method_host, null, StartLocation);
else
- anonymous_method_host = new AnonymousMethodHost (
+ anonymous_method_host = new RootScopeInfo (
this, host, generic, StartLocation);
ScopeInfo = anonymous_method_host;
return anonymous_method_host;
}
- public void CreateIteratorHost (AnonymousMethodHost root_scope)
+ public void CreateIteratorHost (RootScopeInfo root_scope)
{
Report.Debug (64, "CREATE ITERATOR HOST", this, root_scope,
container, anonymous_method_host);