Пример #1
0
 public MethodSignature(MetadataResolutionContext context, IMethodSymbol methodSymbol)
 {
     _declaringTypeName  = methodSymbol.ContainingType.GetFullName();
     _typeParameterCount = methodSymbol.TypeParameters.Length;
     _methodName         = methodSymbol.Name;
     _parameters         = methodSymbol.Parameters
                           .Select(p => new ParameterKey(TypeKey.Create(context, p), p.RefKind))
                           .ToArray();
 }
Пример #2
0
 public MethodSignature(MethodDefinition method)
 {
     _declaringTypeName     = method.DeclaringType.FullName;
     _genericParameterCount = method.GenericParameters.Count;
     _methodName            = method.Name;
     _parameterTypes        = new TypeKey[method.Parameters.Count];
     for (int i = 0; i < _parameterTypes.Length; i++)
     {
         _parameterTypes[i] = TypeKey.Create(method.Parameters[i]);
     }
 }
Пример #3
0
 public static ITypeKey CreateKey(this Type type) => TypeKey.Create(type);
Пример #4
0
 public static ITypeKey NewTypeKey(ModuleDef module, Resource resource) =>
 TypeKey.Create(module, "global::resource::" + resource.ResourceType + "::" + resource.Name);
Пример #5
0
 public static ITypeKey NewTypeKey(IScope scope, string fullName) =>
 TypeKey.Create(scope, fullName);