aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/restquery/query/SearchFilterNAryOperation.scala
blob: 51d18b1cf90f318c1912554b42a3ca1f7ea6d3a8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package xyz.driver.restquery.query

sealed trait SearchFilterNAryOperation

object SearchFilterNAryOperation {

  case object In    extends SearchFilterNAryOperation
  case object NotIn extends SearchFilterNAryOperation

  val All: Set[SearchFilterNAryOperation] = Set(
    In,
    NotIn
  )

  val nAryOperationToName: Map[SearchFilterNAryOperation, String] =
    All.map(a => a -> a.toString.toLowerCase).toMap

  val nAryOperationsFromString: Map[String, SearchFilterNAryOperation] =
    for ((k, v) <- nAryOperationToName) yield (v, k)

}