In ilasm/codegen:
commited8ed96caa99993f72e34d2f396bee0a06098bd4
authorankit <ankit@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Thu, 15 Sep 2005 07:23:45 +0000 (15 07:23 +0000)
committerankit <ankit@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Thu, 15 Sep 2005 07:23:45 +0000 (15 07:23 +0000)
tree6f7833a3fa93fadef77e410b2137a4e0dfd59f0a
parentc051bdf0650329422e61a812bda1467505223860
In ilasm/codegen:
2005-09-15  Ankit Jain  <jankit@novell.com>

* DeclSecurity.cs (IDeclSecurityTarget.AddDeclSecurity): Remove.
  (IDeclSecurityTarget.AddPermission),
  (IDeclSecurityTarget.AddPermissionSet): New.
  (DeclSecurity.IDeclSecurityTarget): Implement new interface methods.
  (DeclSecurity.sec_action),
  (DeclSecurity.data): Remove.
  (DeclSecurity.permissionset_table): New.
  (DeclSecurity.ctor): Replace parameterized constructor with a default one.
  (DeclSecurity.AddTo): AddDeclSecurity for all Security Actions in the permissionset_table.
* TypeDef.cs (TypeDef.declsecurity_list): Remove.
  (TypeDef.decl_sec): New.
  (TypeDef.IDeclSecurityTarget): Implement new interface methods.
  (TypeDef.DefineContents): Use new decl_sec instead of declsecurity_list.
* CodeGen.cs (CodeGen.assembly_declsec): Change type from ArrayList to DeclSecurity.
  (CodeGen.EndAssemblyRef): Set current_customattrtarget and current_declsectarget to null.
  (CodeGen.IDeclSecurityTarget): Implement new interface methods.
  (CodeGen.Write): Add assembly_declsec to the assembly (using DeclSecurity.AddTo).
* ExternTable.cs (ExternAssembly.declsec_list): Remove.
  (ExternAssembly.decl_sec): New.
  (ExternAssembly.Resolve): Use new decl_sec instead of declsec_list.
  (ExternAssembly.IDeclSecurityTarget): Implement new interface methods.
* MethodDef.cs (MethodDef.declsecurity_list): Remove.
  (MethodDef.decl_sec): New.
  (MethodDef.IDeclSecurityTarget): Implement new interface methods.
  (MethodDef.WriteCode): Use new decl_sec instead of declsecurity_list.
* ExternTypeRef.cs (ExternTypeRef.GetReflectedType): New.

In ilasm/parser:
2005-09-15  Ankit Jain  <jankit@novell.com>

* ILParser.jay (ILParser.NameValuePair): New.
  (ILParser.PermPair): New.
  (ILParser.CheckSecurityActionValidity): New.
  (ILParser.ClassRefToObject): New.
  (ILParser.TypeSpecToPermPair): New.
  (class_decl | sec_decl): Use the new codegen.AddPermission .
  (method_decl | sec_decl): Use the new codegen.AddPermission .
  (sec_decl | D_PERMISSION ..): Use the new TypeSpecToPermPair method.
  (sec_decl | D_PERMISSIONSET ..): Use PermissionSetAttribute to create PermissionSet
  which will validate the bytearray.
  (nameval_pairs): Create ArrayList of NameValuePair.
  (nameval_pair): Create NameValuePair.
  (cavalue | class_ref): Use ClassRefToObject.
  (assembly_decl | sec_decl): Use the new codegen.AddAssemblyPermission .

git-svn-id: svn+ssh://mono-cvs.ximian.com/source/trunk/mcs@50071 e3ebcda4-bce8-0310-ba0a-eca2169e7518
ilasm/codegen/ChangeLog
ilasm/codegen/CodeGen.cs
ilasm/codegen/DeclSecurity.cs
ilasm/codegen/ExternTable.cs
ilasm/codegen/ExternTypeRef.cs
ilasm/codegen/MethodDef.cs
ilasm/codegen/TypeDef.cs
ilasm/parser/ChangeLog
ilasm/parser/ILParser.jay