SlickEnumPlainSqlSupport

enumeratum.SlickEnumPlainSqlSupport
See theSlickEnumPlainSqlSupport companion object

Allows for easy creation of GetResult[_] and SetParameter[_] instances for use with Slick's plain sql functionality. Does not require a profile to be in scope; only works with JDBC. Can be used by importing singleton methods or mixing in the trait. GetResult instances are used when mapping query results back to Scala types. SetParameter instances are used when inserting Scala types into interpolated sql queries.

scala> import enumeratum._

scala> sealed trait TrafficLight extends EnumEntry
scala> object TrafficLight extends Enum[TrafficLight] {
   |   case object Red    extends TrafficLight
   |   case object Yellow extends TrafficLight
   |   case object Green  extends TrafficLight
   |   val values = findValues
   | }
scala> import SlickEnumPlainSqlSupport._
scala> implicit val trafficLightSetParameter = setParameterForEnum(TrafficLight)
scala> implicit val trafficLightOptionalSetParameter = optionalSetParameterForEnum(TrafficLight)
scala> implicit val trafficLightGetResult = getResultForEnum(TrafficLight)
scala> implicit val trafficLightOptionalGetResult = optionalGetResultForEnum(TrafficLight)

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Value members

Concrete methods

def getResultForEnum[E <: EnumEntry](e: Enum[E]): GetResult[E]
def getResultForEnumLowercase[E <: EnumEntry](e: Enum[E]): GetResult[E]
def getResultForEnumUppercase[E <: EnumEntry](e: Enum[E]): GetResult[E]
def optionalGetResultForEnum[E <: EnumEntry](e: Enum[E]): GetResult[Option[E]]
def optionalGetResultForEnumLowercase[E <: EnumEntry](e: Enum[E]): GetResult[Option[E]]
def optionalGetResultForEnumUppercase[E <: EnumEntry](e: Enum[E]): GetResult[Option[E]]
def optionalSetParameterForEnum[E <: EnumEntry](e: Enum[E]): SetParameter[Option[E]]
def optionalSetParameterForEnumLowercase[E <: EnumEntry](e: Enum[E]): SetParameter[Option[E]]
def optionalSetParameterForEnumUppercase[E <: EnumEntry](e: Enum[E]): SetParameter[Option[E]]
def setParameterForEnum[E <: EnumEntry](e: Enum[E]): SetParameter[E]
def setParameterForEnumLowercase[E <: EnumEntry](e: Enum[E]): SetParameter[E]
def setParameterForEnumUppercase[E <: EnumEntry](e: Enum[E]): SetParameter[E]