1 // ==++== 2 // 3 // Copyright (c) Microsoft Corporation. All rights reserved. 4 // 5 // ==--== 6 /*============================================================ 7 ** 8 ** Signature: SignatureToken 9 ** 10 ** <OWNER>Microsoft</OWNER> 11 ** 12 ** 13 ** Purpose: Represents a Signature to the ILGenerator signature. 14 ** 15 ** 16 ===========================================================*/ 17 namespace System.Reflection.Emit { 18 19 using System; 20 using System.Reflection; 21 using System.Security.Permissions; 22 23 [System.Runtime.InteropServices.ComVisible(true)] 24 public struct SignatureToken { 25 26 public static readonly SignatureToken Empty = new SignatureToken(); 27 28 internal int m_signature; 29 internal ModuleBuilder m_moduleBuilder; 30 SignatureTokenSystem.Reflection.Emit.SignatureToken31 internal SignatureToken(int str, ModuleBuilder mod) { 32 m_signature=str; 33 m_moduleBuilder = mod; 34 } 35 36 public int Token { 37 get { return m_signature; } 38 } 39 GetHashCodeSystem.Reflection.Emit.SignatureToken40 public override int GetHashCode() 41 { 42 return m_signature; 43 } 44 EqualsSystem.Reflection.Emit.SignatureToken45 public override bool Equals(Object obj) 46 { 47 if (obj is SignatureToken) 48 return Equals((SignatureToken)obj); 49 else 50 return false; 51 } 52 EqualsSystem.Reflection.Emit.SignatureToken53 public bool Equals(SignatureToken obj) 54 { 55 return obj.m_signature == m_signature; 56 } 57 operator ==System.Reflection.Emit.SignatureToken58 public static bool operator ==(SignatureToken a, SignatureToken b) 59 { 60 return a.Equals(b); 61 } 62 operator !=System.Reflection.Emit.SignatureToken63 public static bool operator !=(SignatureToken a, SignatureToken b) 64 { 65 return !(a == b); 66 } 67 68 } 69 } 70