You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Expr is closed, and subtypes of the Sql module cannot add new expressions. This is inconvenient as different dialects of SQL support different constructs.
To support extensibility, we can add a new constructor for Expr that holds a module-defined type, e.g:
typeDialectSpecificExpr[Features, -Input, Output]
...
objectExpr {
...
sealedcaseclassDialectSpecific[F, -A, B](dialectSpecific: DialectSpecificExpr[F, A, B]) extendsExpr[F, A, B]
}
This way, a dialect that has no extension can define type DialectSpecificExpr[F, I, O] = Nothing, while others can define it to be a custom type.
The text was updated successfully, but these errors were encountered:
Currently,
Expr
is closed, and subtypes of theSql
module cannot add new expressions. This is inconvenient as different dialects of SQL support different constructs.To support extensibility, we can add a new constructor for
Expr
that holds a module-defined type, e.g:This way, a dialect that has no extension can define
type DialectSpecificExpr[F, I, O] = Nothing
, while others can define it to be a custom type.The text was updated successfully, but these errors were encountered: