/// <summary> /// Reads the specified token. /// </summary> /// <param name="token">The token.</param> /// <param name="result">The result.</param> public void Read(TokenTypes token, out ImplMapRow result) { if ((token & TokenTypes.TableMask) != TokenTypes.ImplMap) throw new ArgumentException ("Invalid token type for ImplMapRow.", "token"); using (BinaryReader reader = CreateReaderForToken (token)) { result = new ImplMapRow ((PInvokeAttributes)reader.ReadUInt16 (), ReadIndexValue (reader, IndexType.MemberForwarded), ReadIndexValue (reader, IndexType.StringHeap), ReadIndexValue (reader, TokenTypes.ModuleRef)); } }
void IMetadataProvider.Read(TokenTypes token, out ImplMapRow result) { TableHeap theap = (TableHeap)_streams[(int)HeapType.Tables]; theap.Read(token, out result); }
public ImplMapRowExt(IMetadataProvider metadata, ImplMapRow row) : base(metadata) { this.row = row; }