public MetadataHeaps() { Guids = new GuidHeap(); Blobs = new BlobHeap(); Strings = new StringHeap(); UserStrings = new UserStringHeap(); Tables = new TableHeap(this); }
TokenTypes IMetadataProvider.Read(TokenTypes token, out Guid result) { if ((TokenTypes.TableMask & token) == TokenTypes.Guid) { GuidHeap gheap = (GuidHeap)_streams[(int)HeapType.Guid]; result = gheap.ReadGuid(ref token); } else { throw new ArgumentException(@"Invalid token for a guid.", @"token"); } return(token); }
public virtual void VisitGuidHeap(GuidHeap heap) { }
/// <summary> /// Reads a guid heap entry. /// </summary> /// <param name="token">The token of the guid heap entry to read.</param> /// <returns></returns> Guid IMetadataProvider.ReadGuid(HeapIndexToken token) { GuidHeap gheap = (GuidHeap)_streams[(int)HeapType.Guid]; return(gheap.ReadGuid(token)); }
public override void VisitGuidHeap(GuidHeap heap) { this.asm.StaticArray(moduleName + " GuidHeap", heap.Data); }
private ValueType GetGuidIndex(Workspace workspace, Guid guid) { GuidHeap guidHeap = workspace.GetStream <GuidHeap>(); return(GetHeapOffset(guidHeap, guidHeap.GetGuidOffset(guid))); }