Created
December 28, 2017 18:49
-
-
Save Jacoby6000/30b3836896575faf9724daf2f90ebbae to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sealed trait QueryValue[A] | |
case class Parameter[A](value: A) extends QueryValue[A] | |
case class Function[A](path: Path, args: List[QueryValue[A]]) extends QueryValue[A] | |
case class Null[A]() extends QueryValue[A] | |
sealed trait QueryComparison[A] | |
case class QueryEqual[A](left: QueryValue[A], right: QueryValue[A]) extends QueryComparison[A] | |
case class QueryGreaterThan[A](left: QueryValue[A], right: QueryValue[A]) extends QueryComparison[A] | |
case class QueryGreaterThanOrEqual[A](left: QueryValue[A], right: QueryValue[A]) extends QueryComparison[A] | |
case class QueryLessThan[A](left: QueryValue[A], right: QueryValue[A]) extends QueryComparison[A] | |
case class QueryLessThanOrEqual[A](left: QueryValue[A], right: QueryValue[A]) extends QueryComparison[A] | |
case class QueryAnd[A](left: QueryComparison[A], right: QueryComparison[A]) extends QueryComparison[A] | |
case class QueryOr[A](left: QueryComparison[A], right: QueryComparison[A]) extends QueryComparison[A] | |
case class QueryIn[A](left: QueryValue[A], rights: List[QueryValue[A]]) extends QueryComparison[A] | |
case class QueryLit[A](value: QueryValue[A]) extends QueryComparison[A] | |
case class QueryNot[A](value: QueryComparison[A]) extends QueryComparison[A] | |
case class Path(p: String) extends AnyVal |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment