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
Example #10
0
        } // 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
Example #11
0
        } // Equals

        public bool Equals(GenericParameterHandle handle)
        {
            return _value == handle._value;
        } // Equals
Example #12
0
        } // 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