Author: ankit
Date: 2006-01-16 02:41:34 -0500 (Mon, 16 Jan 2006)
New Revision: 55622

Modified:
   trunk/mcs/ilasm/codegen/BaseClassRef.cs
   trunk/mcs/ilasm/codegen/BaseTypeRef.cs
   trunk/mcs/ilasm/codegen/ChangeLog
   trunk/mcs/ilasm/codegen/ExternTypeRef.cs
   trunk/mcs/ilasm/codegen/GenericParamRef.cs
   trunk/mcs/ilasm/codegen/GenericTypeInst.cs
   trunk/mcs/ilasm/codegen/MethodPointerTypeRef.cs
   trunk/mcs/ilasm/codegen/PrimitiveTypeRef.cs
   trunk/mcs/ilasm/codegen/Sentinel.cs
   trunk/mcs/ilasm/codegen/TypeRef.cs
Log:
* BaseTypeRef.cs (BaseTypeRef.Resolve): Make this abstract.
(BaseTypeRef.CreateMethodRef):
(BaseTypeRef.CreateFieldRef): Make protected and abstract.
* BaseClassRef.cs (BaseClassRef.Clone): Make this abstract.
Update all derived classes.
* PrimitiveTypeRef.cs (PrimitiveTypeRef.CreateMethodRef):
* GenericTypeInst.cs (GenericTypeInst.CreateMethodRef): Implement, but throw
exception as this method is not used.


Modified: trunk/mcs/ilasm/codegen/BaseClassRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/BaseClassRef.cs     2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/BaseClassRef.cs     2006-01-16 07:41:34 UTC (rev 
55622)
@@ -33,10 +33,8 @@
                         get { return type as PEAPI.Class; }
                 }
 
-                public virtual BaseClassRef Clone ()
-                {
-                        throw new Exception ("Should not be called");
-                }
+                public abstract BaseClassRef Clone ();
+
                 public virtual void MakeValueClass ()
                 {
                         is_valuetype = true;

Modified: trunk/mcs/ilasm/codegen/BaseTypeRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/BaseTypeRef.cs      2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/BaseTypeRef.cs      2006-01-16 07:41:34 UTC (rev 
55622)
@@ -51,16 +51,10 @@
                         get { return is_resolved; }
                 }
 
-                public virtual void Resolve (CodeGen code_gen)
-                {
-                        throw new Exception ("Should not be called");
-                }
+                public abstract void Resolve (CodeGen code_gen);
 
-                public virtual BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
-                        PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count)
-                {
-                        throw new Exception ("Should not be called");
-                }
+                protected abstract BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
+                        PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count);
 
                 public virtual BaseMethodRef GetMethodRef (BaseTypeRef 
ret_type,
                         PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count)
@@ -82,10 +76,7 @@
                         return mr;
                 }
 
-                public virtual IFieldRef CreateFieldRef (BaseTypeRef ret_type, 
string name)
-                {
-                        throw new Exception ("Should not be called");
-                }
+                protected abstract IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name);
 
                 public virtual IFieldRef GetFieldRef (BaseTypeRef ret_type, 
string name)
                 {

Modified: trunk/mcs/ilasm/codegen/ChangeLog
===================================================================
--- trunk/mcs/ilasm/codegen/ChangeLog   2006-01-16 07:15:58 UTC (rev 55621)
+++ trunk/mcs/ilasm/codegen/ChangeLog   2006-01-16 07:41:34 UTC (rev 55622)
@@ -1,3 +1,14 @@
+2006-01-16  Ankit Jain  <[EMAIL PROTECTED]>
+
+       * BaseTypeRef.cs (BaseTypeRef.Resolve): Make this abstract.
+       (BaseTypeRef.CreateMethodRef):
+       (BaseTypeRef.CreateFieldRef): Make protected and abstract.
+       * BaseClassRef.cs (BaseClassRef.Clone): Make this abstract.
+       Update all derived classes.
+       * PrimitiveTypeRef.cs (PrimitiveTypeRef.CreateMethodRef):
+       * GenericTypeInst.cs (GenericTypeInst.CreateMethodRef): Implement, but 
throw
+       exception as this method is not used.
+
 2006-01-14  Ankit Jain  <[EMAIL PROTECTED]>
 
        * GenericParamRef.cs (GenericParamRef.Resolve): Apply modifications to 
the

Modified: trunk/mcs/ilasm/codegen/ExternTypeRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/ExternTypeRef.cs    2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/ExternTypeRef.cs    2006-01-16 07:41:34 UTC (rev 
55622)
@@ -76,13 +76,13 @@
                         is_resolved = true;
                 }
 
-                public override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string name, BaseTypeRef[] param, int 
gen_param_count)
                 {
                         return new ExternMethodRef (this, ret_type, call_conv, 
name, param, gen_param_count);
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                         return new ExternFieldRef (this, ret_type, name);
                 }

Modified: trunk/mcs/ilasm/codegen/GenericParamRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/GenericParamRef.cs  2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/GenericParamRef.cs  2006-01-16 07:41:34 UTC (rev 
55622)
@@ -101,13 +101,13 @@
                                                          param.Name));
                 }
 
-                public override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string name, BaseTypeRef[] param, int 
gen_param_count)
                 {
                         return new TypeSpecMethodRef (this, call_conv, 
ret_type, name, param, gen_param_count);
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                         return new TypeSpecFieldRef (this, ret_type, name);
                 }

Modified: trunk/mcs/ilasm/codegen/GenericTypeInst.cs
===================================================================
--- trunk/mcs/ilasm/codegen/GenericTypeInst.cs  2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/GenericTypeInst.cs  2006-01-16 07:41:34 UTC (rev 
55622)
@@ -88,6 +88,12 @@
                         gen_args.Resolve (type_gen_params, method_gen_params);
                 }
 
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
+                        PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count)
+                {
+                        throw new Exception ("Should not be called");
+                }
+
                 public override BaseMethodRef GetMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string meth_name, BaseTypeRef[] param, int 
gen_param_count)
                 {
@@ -102,7 +108,7 @@
                         return mr;
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string field_name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string field_name)
                 {
                        /* Note: Using FullName here as we are caching in a 
static hashtable */
                         string key = FullName + ret_type.FullName + field_name;

Modified: trunk/mcs/ilasm/codegen/MethodPointerTypeRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/MethodPointerTypeRef.cs     2006-01-16 07:15:58 UTC 
(rev 55621)
+++ trunk/mcs/ilasm/codegen/MethodPointerTypeRef.cs     2006-01-16 07:41:34 UTC 
(rev 55622)
@@ -78,13 +78,13 @@
                         is_resolved = true;
                 }
 
-                public override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string name, BaseTypeRef[] param, int 
gen_param_count)
                 {
                         return new TypeSpecMethodRef (this, call_conv, 
ret_type, name, param, gen_param_count);
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                         return new TypeSpecFieldRef (this, ret_type, name);
                 }

Modified: trunk/mcs/ilasm/codegen/PrimitiveTypeRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/PrimitiveTypeRef.cs 2006-01-16 07:15:58 UTC (rev 
55621)
+++ trunk/mcs/ilasm/codegen/PrimitiveTypeRef.cs 2006-01-16 07:41:34 UTC (rev 
55622)
@@ -60,6 +60,12 @@
                         }
                 }
 
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
+                        PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count)
+                {
+                        throw new Exception ("Should not be called");
+                }
+
                 public override BaseMethodRef GetMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string name, BaseTypeRef[] param, int 
gen_param_count)
                 {
@@ -75,7 +81,7 @@
                         return mr;
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                        throw new Exception ("PrimitiveType's can't have 
fields!");
                 }

Modified: trunk/mcs/ilasm/codegen/Sentinel.cs
===================================================================
--- trunk/mcs/ilasm/codegen/Sentinel.cs 2006-01-16 07:15:58 UTC (rev 55621)
+++ trunk/mcs/ilasm/codegen/Sentinel.cs 2006-01-16 07:41:34 UTC (rev 55622)
@@ -29,13 +29,13 @@
                         is_resolved = true;
                 }
 
-                public override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type, PEAPI.CallConv call_conv,
                                 string name, BaseTypeRef[] param, int 
gen_param_count)
                 {
                         return new TypeSpecMethodRef (this, call_conv, 
ret_type, name, param, gen_param_count);
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                         return new TypeSpecFieldRef (this, ret_type, name);
                 }

Modified: trunk/mcs/ilasm/codegen/TypeRef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/TypeRef.cs  2006-01-16 07:15:58 UTC (rev 55621)
+++ trunk/mcs/ilasm/codegen/TypeRef.cs  2006-01-16 07:41:34 UTC (rev 55622)
@@ -37,13 +37,13 @@
                         return new TypeRef (full_name, is_valuetype, location, 
(ArrayList) ConversionList.Clone (), sig_mod);
                 }
 
-                public override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
+                protected override BaseMethodRef CreateMethodRef (BaseTypeRef 
ret_type,
                         PEAPI.CallConv call_conv, string name, BaseTypeRef[] 
param, int gen_param_count)
                 {
                          return new MethodRef (this, call_conv, ret_type, 
name, param, gen_param_count);
                 }
 
-                public override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
+                protected override IFieldRef CreateFieldRef (BaseTypeRef 
ret_type, string name)
                 {
                          return new FieldRef (this, ret_type, name);
                 }

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to