In mcs:
[mono.git] / mcs / gmcs / tree.cs
index 046aabe0361e5195efd896ae3567c8b0072ba99c..d6a822811d0607d92699309e3630985d8c3d9fe0 100644 (file)
@@ -33,23 +33,13 @@ namespace Mono.CSharp
        public class Tree {
                TypeContainer root_types;
 
-               // <summary>
-               //   Keeps track of all the types definied (classes, structs, ifaces, enums)
-               // </summary>
-               Hashtable decls;
-               
                public Tree ()
                {
                        root_types = new RootTypes ();
-
-                       decls = new Hashtable ();
                }
 
                public void RecordDecl (Namespace ns, MemberName name, DeclSpace ds)
                {
-                       // This is recorded for tracking inner partial classes only
-                       decls [name] = ds;
-
                        if (ds.Parent == root_types)
                                ns.AddDeclSpace (name.Basename, ds);
                }
@@ -60,15 +50,6 @@ namespace Mono.CSharp
                 public TypeContainer Types {
                         get { return root_types; }
                 }
-
-               public DeclSpace GetDecl (MemberName name)
-               {
-                       return (DeclSpace) decls [name];
-               }
-
-               public Hashtable AllDecls {
-                       get { return decls; }
-               }
        }
 
        public sealed class RootTypes : TypeContainer
@@ -76,17 +57,17 @@ namespace Mono.CSharp
                public RootTypes ()
                        : base (null, null, MemberName.Null, null, Kind.Root)
                {
-                       ec = new EmitContext (null, this, Location.Null, null, null, 0, false);
+                       types = new ArrayList ();
                }
 
-               public override PendingImplementation GetPendingImplementations ()
+               public override bool IsClsComplianceRequired ()
                {
-                       throw new InvalidOperationException ();
+                       return true;
                }
 
-               public override bool IsClsComplianceRequired ()
+               public override bool GetClsCompliantAttributeValue ()
                {
-                       return true;
+                       return CodeGen.Assembly.IsClsCompliant;
                }
 
                public override string GetSignatureForError ()
@@ -98,5 +79,11 @@ namespace Mono.CSharp
                {
                        return AddToContainer (ds, ds.Name);
                }
+
+               public override TypeContainer AddPartial (TypeContainer nextPart)
+               {
+                       return AddPartial (nextPart, nextPart.Name);
+               }
+
        }
 }