/// <summary> /// Reads the specified token. /// </summary> /// <param name="token">The token.</param> /// <param name="result">The result.</param> public void Read(TokenTypes token, out GenericParamConstraintRow result) { if ((token & TokenTypes.TableMask) != TokenTypes.GenericParamConstraint) { throw new ArgumentException("Invalid token type for GenericParamConstraintRow.", "token"); } using (BinaryReader reader = CreateReaderForToken(token)) { result = new GenericParamConstraintRow(ReadIndexValue(reader, TokenTypes.GenericParam), ReadIndexValue(reader, IndexType.TypeDefOrRef)); } }
void ReadGenericParameterConstraints() { if (!m_tHeap.HasTable(GenericParamConstraintTable.RId)) { return; } GenericParamConstraintTable gpcTable = m_tableReader.GetGenericParamConstraintTable(); for (int i = 0; i < gpcTable.Rows.Count; i++) { GenericParamConstraintRow gpcRow = gpcTable [i]; GenericParameter gp = GetGenericParameterAt(gpcRow.Owner); gp.Constraints.Add(GetTypeDefOrRef(gpcRow.Constraint, new GenericContext(gp.Owner))); } }
public virtual void VisitGenericParamConstraintRow(GenericParamConstraintRow row) { }
void IMetadataProvider.Read(TokenTypes token, out GenericParamConstraintRow result) { TableHeap theap = (TableHeap)_streams[(int)HeapType.Tables]; theap.Read(token, out result); }