ILRuntime第二課Invocation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
using ILRuntime.CLR.Method;
 
namespace ILRuntime.CLR.TypeSystem
{
    public interface IType
    {
        bool IsGenericInstance { get; }
        KeyValuePair<string, IType>[] GenericArguments { get; }
        Type TypeForCLR { get; }
        Type ReflectionType { get; }
 
        IType BaseType { get; }
 
        IType[] Implements { get; }
 
        IType ByRefType { get; }
 
        IType ArrayType { get; }
 
        string FullName { get; }
 
        string Name { get; }
 
        bool IsArray { get; }
 
        bool IsValueType { get; }
 
        bool IsDelegate { get; }
 
        bool HasGenericParameter { get; }
 
        ILRuntime.Runtime.Enviorment.AppDomain AppDomain { get; }
 
        IMethod GetMethod(string name, int paramCount);
 
        IMethod GetMethod(string name, List<IType> param, IType[] genericArguments, IType returnType = null);
        IMethod GetVirtualMethod(IMethod method);
 
        List<IMethod> GetMethods();
 
        int GetFieldIndex(object token);
 
        IMethod GetConstructor(List<IType> param);
 
        bool CanAssignTo(IType type);
 
        IType MakeGenericInstance(KeyValuePair<string, IType>[] genericArguments);
 
        IType MakeByRefType();
 
        IType MakeArrayType();
        IType FindGenericArgument(string key);
 
        IType ResolveGenericType(IType contextType);
    }
}

發佈了40 篇原創文章 · 獲贊 12 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章