linq2db by Igor Tkachev, Ilya Chudin, Svyatoslav Danyliv, Dmitry Lukashenko

<PackageReference Include="linq2db" Version="5.0.0-rc.2" />

.NET API 4,326,400 bytes

 SqlFunction

public bool CanBeNull { get; set; }

public bool DoNotOptimize { get; set; }

public QueryElementType ElementType { get; }

public bool IsAggregate { get; }

public bool IsPure { get; }

public string Name { get; }

public ISqlExpression[] Parameters { get; }

public int Precedence { get; }

public Type SystemType { get; }

public SqlFunction(Type systemType, string name, ISqlExpression[] parameters)

public SqlFunction(Type systemType, string name, bool isAggregate, bool isPure, ISqlExpression[] parameters)

public SqlFunction(Type systemType, string name, bool isAggregate, ISqlExpression[] parameters)

public SqlFunction(Type systemType, string name, bool isAggregate, int precedence, ISqlExpression[] parameters)

public SqlFunction(Type systemType, string name, bool isAggregate, bool isPure, int precedence, ISqlExpression[] parameters)

public static SqlFunction CreateAll(SelectQuery subQuery)

public static SqlFunction CreateAny(SelectQuery subQuery)

public static SqlFunction CreateCount(Type type, ISqlTableSource table)

public static SqlFunction CreateExists(SelectQuery subQuery)

public static SqlFunction CreateSome(SelectQuery subQuery)

public void Deconstruct(out Type systemType, out string name)

public void Deconstruct(out string name)

public bool Equals(ISqlExpression other, Func<ISqlExpression, ISqlExpression, bool> comparer)