コード例 #1
0
        private MsCorLibTypeSignature CreateSignature(ElementType type, string name, bool isValueType)
        {
            if (!_isMsCorLib)
            {
                return(new MsCorLibTypeSignature(new TypeReference(MsCorLibReference, "System", name)
                {
                    Header = _header
                }, type, isValueType));
            }

            if (_typeDefinitions == null)
            {
                _typeDefinitions = _header.GetStream <TableStream>().GetTable <TypeDefinition>();
            }
            return(new MsCorLibTypeSignature(_typeDefinitions.First(x => x.Name == name), type, isValueType));
        }
コード例 #2
0
ファイル: TypeSystem.cs プロジェクト: micax/AsmResolver
        private MsCorLibTypeSignature CreateSignature(ElementType type, string name, bool isValueType)
        {
            MsCorLibTypeSignature signature;

            if (_isMsCorLib)
            {
                if (_typeDefinitions == null)
                {
                    _typeDefinitions = _header.GetStream <TableStream>().GetTable <TypeDefinition>();
                }
                signature = new MsCorLibTypeSignature(_typeDefinitions.First(x => x.Name == name), type, isValueType);
            }
            else
            {
                signature = new MsCorLibTypeSignature(new TypeReference(MsCorLibReference, "System", name)
                {
                    Header = _header
                }, type, isValueType);
            }

            _typesByName[name]        = signature;
            _typesByElementType[type] = signature;
            return(signature);
        }