protected RuntimeGenericParameterTypeInfo(MetadataReader reader, GenericParameterHandle genericParameterHandle) { Reader = reader; GenericParameterHandle = genericParameterHandle; _genericParameter = genericParameterHandle.GetGenericParameter(reader); _position = _genericParameter.Number; }
protected NativeFormatRuntimeGenericParameterTypeInfo(MetadataReader reader, GenericParameterHandle genericParameterHandle, GenericParameter genericParameter) : base(genericParameter.Number) { Reader = reader; GenericParameterHandle = genericParameterHandle; _genericParameter = genericParameter; }
private NativeFormatRuntimeGenericParameterTypeInfoForTypes(MetadataReader reader, GenericParameterHandle genericParameterHandle, RuntimeTypeInfo declaringRuntimeNamedTypeInfo) : base(reader, genericParameterHandle, genericParameterHandle.GetGenericParameter(reader)) { _declaringRuntimeNamedTypeInfo = declaringRuntimeNamedTypeInfo; }
private RuntimeGenericParameterTypeInfoForTypes(MetadataReader reader, GenericParameterHandle genericParameterHandle, RuntimeTypeInfo declaringRuntimeNamedTypeInfo) : base(reader, genericParameterHandle) { _declaringRuntimeNamedTypeInfo = declaringRuntimeNamedTypeInfo; }
} // Read public static uint Read(this NativeReader reader, uint offset, out GenericParameterHandle[] values) { uint count; offset = reader.DecodeUnsigned(offset, out count); if (count == 0) { values = s_emptyGenericParameterHandleArray; } else { values = new GenericParameterHandle[count]; for (uint i = 0; i < count; ++i) { GenericParameterHandle tmp; offset = reader.Read(offset, out tmp); values[i] = tmp; } } return offset; } // Read
} // Read public static uint Read(this NativeReader reader, uint offset, out GenericParameterHandle handle) { uint value; offset = reader.DecodeUnsigned(offset, out value); handle = new GenericParameterHandle((int)value); handle._Validate(); return offset; } // Read
internal NativeFormatGenericParameter(NativeFormatMetadataUnit metadataUnit, GenericParameterHandle handle) { _metadataUnit = metadataUnit; _handle = handle; }
} // IsNull internal bool IsNull(GenericParameterHandle handle) { return (handle._value & 0x00FFFFFF) == 0; } // IsNull
} // ToHandle internal Handle ToHandle(GenericParameterHandle handle) { return new Handle(handle._value); } // ToHandle
} // GetFixedArgument public GenericParameter GetGenericParameter(GenericParameterHandle handle) { var record = new GenericParameter() { _reader = this, _handle = handle }; var offset = (uint)handle.Offset; offset = _streamReader.Read(offset, out record._number); offset = _streamReader.Read(offset, out record._flags); offset = _streamReader.Read(offset, out record._kind); offset = _streamReader.Read(offset, out record._name); offset = _streamReader.Read(offset, out record._constraints); offset = _streamReader.Read(offset, out record._customAttributes); return record; } // GetGenericParameter
} // Equals public bool Equals(GenericParameterHandle handle) { return _value == handle._value; } // Equals
} // Read public static uint Read(this NativeReader reader, uint offset, out GenericParameterHandle[] values) { uint count; offset = reader.DecodeUnsigned(offset, out count); #if !NETFX_45 if (count == 0) { values = Array.Empty<GenericParameterHandle>(); } else #endif { values = new GenericParameterHandle[count]; for (uint i = 0; i < count; ++i) { GenericParameterHandle tmp; offset = reader.Read(offset, out tmp); values[i] = tmp; } } return offset; } // Read