public HasSingleParameterConstructor(ISelect <ConstructorInfo, Array <ParameterInfo> > parameters) : base(parameters.Query() .FirstAssigned() .Select(Start.An.Instance(ParameterType.Default) .Then() .Metadata() .Select(IsAssignableFrom <T> .Default) .Assigned() .Get()) .Then() .And(parameters.Then().Select(RemainingParametersAreOptional.Default))) { }
public static ISelect <_, Array <T> > Result <_, T>(this ISelect <_, IEnumerable <T> > @this) => @this.Query().Get();