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(); }
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]); } }
public static ITypeKey CreateKey(this Type type) => TypeKey.Create(type);
public static ITypeKey NewTypeKey(ModuleDef module, Resource resource) => TypeKey.Create(module, "global::resource::" + resource.ResourceType + "::" + resource.Name);
public static ITypeKey NewTypeKey(IScope scope, string fullName) => TypeKey.Create(scope, fullName);