Merge pull request #2780 from alexanderkyte/seq_point_optimize
[mono.git] / mcs / class / PEAPI / PEAPI.cs
index ce259c0739bc97e5e8dea133a3a97be6aba199b8..ec3cb4107176a74c0065e82b37a7e856322056bf 100644 (file)
@@ -753,9 +753,9 @@ namespace PEAPI {
                        return modRef;
                }
 
-               public ClassRef AddExternClass(string name, TypeAttr attrs, MetaDataElement declRef) 
+               public ClassRef AddExternClass(string ns, string name, TypeAttr attrs, MetaDataElement declRef)
                {
-                       return new ExternClassRef (attrs, null, name, declRef, metaData);
+                       return new ExternClassRef (attrs, ns, name, declRef, metaData);
                }
                
                /// <summary>
@@ -923,6 +923,11 @@ namespace PEAPI {
                        return file;
                }
 
+               public PrimitiveTypeRef AddPrimitiveType (PrimitiveType type)
+               {
+                       return new PrimitiveTypeRef (type, metaData);
+               }
+
                /// <summary>
                /// Add a manifest resource to this PEFile NOT YET IMPLEMENTED
                /// </summary>
@@ -940,6 +945,12 @@ namespace PEAPI {
                        element.HasCustomAttr = true;
                }
 
+               public void AddCustomAttribute (Method meth, Constant constant, MetaDataElement element)
+               {
+                       metaData.AddCustomAttribute (new CustomAttribute (element, meth, constant));
+                       element.HasCustomAttr = true;
+               }
+
                public void AddDeclSecurity (SecurityAction sec_action, byte [] data, MetaDataElement element)
                {
                        metaData.AddDeclSecurity (new DeclSecurity (element, (ushort) sec_action, data));