internal MethodBaseInfo(MethodBaseInfo methodBaseInfo, TypeInfoProvider typeInfoProvider) : base(methodBaseInfo, typeInfoProvider) { BindingFlags = methodBaseInfo.BindingFlags; GenericArgumentTypes = methodBaseInfo.GenericArgumentTypes?.Select(typeInfoProvider.Get).ToList(); ParameterTypes = methodBaseInfo.ParameterTypes?.Select(typeInfoProvider.Get).ToList(); }
internal MethodBaseInfo(MethodBaseInfo methodBaseInfo, TypeInfoProvider typeInfoProvider) : base(methodBaseInfo, typeInfoProvider) { // TODO: why is the dammit operator required!? GenericArgumentTypes = methodBaseInfo.GenericArgumentTypes?.Select(typeInfoProvider.Get).ToList() !; ParameterTypes = methodBaseInfo.ParameterTypes?.Select(typeInfoProvider.Get).ToList() !; }
protected MethodBaseInfo(MethodBaseInfo methodBaseInfo, Dictionary<TypeInfo, TypeInfo> referenceTracker) : base(methodBaseInfo, referenceTracker) { BindingFlags = methodBaseInfo.BindingFlags; GenericArgumentTypes = ReferenceEquals(null, methodBaseInfo.GenericArgumentTypes) ? null : methodBaseInfo.GenericArgumentTypes.Select(x => TypeInfo.Create(referenceTracker, x)).ToList(); ParameterTypes = ReferenceEquals(null, methodBaseInfo.ParameterTypes) ? null : methodBaseInfo.ParameterTypes.Select(x => TypeInfo.Create(referenceTracker, x)).ToList(); }
protected MethodBaseInfo(MethodBaseInfo method, TypeInfoProvider typeInfoProvider) : base(method, typeInfoProvider) { GenericArgumentTypes = method.CheckNotNull(nameof(method)).GenericArgumentTypes .AsNullIfEmpty()? .Select(x => typeInfoProvider.Get(x)) .ToList(); ParameterTypes = method.ParameterTypes .AsNullIfEmpty()? .Select(x => typeInfoProvider.Get(x)) .ToList(); }