void IMetadataProvider.Read(TokenTypes token, out ModuleRow result) { TableHeap theap = (TableHeap)_streams[(int)HeapType.Tables]; theap.Read(token, out result); }
/// <summary> /// Reads the specified token. /// </summary> /// <param name="token">The token.</param> /// <param name="result">The result.</param> public void Read(TokenTypes token, out ModuleRow result) { if ((token & TokenTypes.TableMask) != TokenTypes.Module) throw new ArgumentException ("Invalid token type for ModuleRow.", "token"); using (BinaryReader reader = CreateReaderForToken (token)) { result = new ModuleRow (reader.ReadUInt16 (), ReadIndexValue (reader, IndexType.StringHeap), ReadIndexValue (reader, IndexType.GuidHeap), ReadIndexValue (reader, IndexType.GuidHeap), ReadIndexValue (reader, IndexType.GuidHeap)); } }