2 // Mono.ILASM.GenericMethodSig
5 // Jackson Harper (jackson@ximian.com)
7 // (C) 2003 Ximian, Inc (http://www.ximian.com)
11 using System
.Collections
;
13 namespace Mono
.ILASM
{
15 public class GenericMethodSig
{
17 private GenericArguments gen_args
;
18 private bool is_resolved
;
19 private PEAPI
.GenericMethodSig sig
;
21 private static Hashtable sig_table
;
23 public GenericMethodSig (GenericArguments gen_args
)
25 this.gen_args
= gen_args
;
29 public PEAPI
.GenericMethodSig Sig
{
33 public PEAPI
.GenericMethodSig
Resolve (CodeGen code_gen
)
38 sig
= new PEAPI
.GenericMethodSig (gen_args
.Resolve (code_gen
));
44 public static GenericMethodSig
GetInstance (GenericArguments gen_args
)
46 GenericMethodSig sig
= null;
48 if (sig_table
== null)
49 sig_table
= new Hashtable ();
51 sig
= (GenericMethodSig
) sig_table
[gen_args
.ToString ()];
54 sig
= new GenericMethodSig (gen_args
);
55 sig_table
[gen_args
.ToString ()] = sig
;