public void LoadData(CLIFile pFile) { int token = 0; if (pFile.FieldTable.Length > HasConstantTypeMax16BitRows || pFile.ParamTable.Length > HasConstantTypeMax16BitRows || pFile.PropertyTable.Length > HasConstantTypeMax16BitRows) { token = pFile.ReadInt32(); } else { token = pFile.ReadUInt16(); } Type = (HasConstantType)(token & HasConstantTypeMask); token = (token >> HasConstantTypeBits) - 1; if (token >= 0) { switch (Type) { case HasConstantType.Field: Field = pFile.FieldTable[token]; break; case HasConstantType.Param: Param = pFile.ParamTable[token]; break; case HasConstantType.Property: Property = pFile.PropertyTable[token]; break; default: throw new BadImageFormatException("HasConstant Type"); } } }
public void LoadData(CLIFile pFile) { int token = 0; if (pFile.FieldTable.Length > HasConstantTypeMax16BitRows || pFile.ParamTable.Length > HasConstantTypeMax16BitRows || pFile.PropertyTable.Length > HasConstantTypeMax16BitRows) token = pFile.ReadInt32(); else token = pFile.ReadUInt16(); Type = (HasConstantType)(token & HasConstantTypeMask); token = (token >> HasConstantTypeBits) - 1; if (token >= 0) { switch (Type) { case HasConstantType.Field: Field = pFile.FieldTable[token]; break; case HasConstantType.Param: Param = pFile.ParamTable[token]; break; case HasConstantType.Property: Property = pFile.PropertyTable[token]; break; default: throw new BadImageFormatException("HasConstant Type"); } } }