/// <summary> /// Class constructor /// </summary> public PipReference(PipTable pipTable, PipId pipId, PipQueryContext pipQueryContext) { Contract.Requires(pipTable != null); PipTable = pipTable; PipQueryContext = pipQueryContext; PipId = pipId; }
internal Pip InternalGetOrSetPip(PipTable table, PipId pipId, PipQueryContext context, Func <PipTable, PipId, PageableStoreId, PipQueryContext, Pip> creator) { lock (this) { Pip pip; if (m_weakPip == null) { pip = creator(table, pipId, StoreId, context); m_weakPip = new WeakReference <Pip>(pip); } else if (!m_weakPip.TryGetTarget(out pip)) { m_weakPip.SetTarget(pip = creator(table, pipId, StoreId, context)); } return(pip); } }
public Pip GetSealedDirectoryPip(DirectoryArtifact directoryArtifact, PipQueryContext queryContext) { throw new NotImplementedException(); }
public Pip HydratePip(PipId pipId, PipQueryContext queryContext) { return(m_pips[pipId]); }