class ExpandSums extends Phase
Expand sum types and their catamorphisms to equivalent product type operations.
- Source
- ExpandSums.scala
- Alphabetic
- By Inheritance
- ExpandSums
- Phase
- Logging
- Function1
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ExpandSums()
Type Members
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from ExpandSums to any2stringadd[ExpandSums] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (ExpandSums, B)
- Implicit
- This member is added by an implicit conversion from ExpandSums to ArrowAssoc[ExpandSums] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val Disc1: LiteralNode
- val DiscNone: LiteralNode
-
def
andThen[A](g: (CompilerState) ⇒ A): (CompilerState) ⇒ A
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
def
apply(state: CompilerState): CompilerState
Run the phase
Run the phase
- Definition Classes
- ExpandSums → Phase → Function1
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
buildMultiColumnNone(tpe: Type): Node
Create a Node representing a structure of null values of the given Type
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
collectDiscriminatorCandidates(n: Node): Set[(TypeSymbol, List[TermSymbol])]
Collect discriminator candidate fields in a predicate.
Collect discriminator candidate fields in a predicate. These are all paths below an OptionApply, which indicates their future use under a discriminator guard.
-
def
compose[A](g: (A) ⇒ CompilerState): (A) ⇒ CompilerState
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
def
ensuring(cond: (ExpandSums) ⇒ Boolean, msg: ⇒ Any): ExpandSums
- Implicit
- This member is added by an implicit conversion from ExpandSums to Ensuring[ExpandSums] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (ExpandSums) ⇒ Boolean): ExpandSums
- Implicit
- This member is added by an implicit conversion from ExpandSums to Ensuring[ExpandSums] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): ExpandSums
- Implicit
- This member is added by an implicit conversion from ExpandSums to Ensuring[ExpandSums] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): ExpandSums
- Implicit
- This member is added by an implicit conversion from ExpandSums to Ensuring[ExpandSums] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
expandConditionals(n: Node): Node
Expand multi-column conditional expressions and SilentCasts.
Expand multi-column conditional expressions and SilentCasts. Single-column conditionals involving NULL values are optimized away where possible.
- def expandSums(n: Node): Node
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from ExpandSums to StringFormat[ExpandSums] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
def
fuse(n: Node): Node
Fuse unnecessary Option operations
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
lazy val
logger: SlickLogger
- Attributes
- protected[this]
- Definition Classes
- Logging
-
val
name: String
The unique name of the phase
The unique name of the phase
- Definition Classes
- ExpandSums → Phase
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
silentCast(tpe: Type, n: Node): Node
Create a SilentCast call unless the type already matches
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toOptionColumns(tpe: Type): Type
Strip nominal types and convert all atomic types to OptionTypes
-
def
toString(): String
- Definition Classes
- Function1 → AnyRef → Any
-
def
trType(tpe: Type): Type
Perform the sum expansion on a Type
-
def
translateJoin(bind: Bind, discCandidates: Set[(TypeSymbol, List[TermSymbol])]): Bind
Translate an Option-extended left outer, right outer or full outer join
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
→[B](y: B): (ExpandSums, B)
- Implicit
- This member is added by an implicit conversion from ExpandSums to ArrowAssoc[ExpandSums] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- object PathOnTypeSymbol
edit this text on github
Scala Language-Integrated Connection Kit
This is the API documentation for the Slick database library. It should be used as an additional resource to the user manual.
Further documentation for Slick can be found on the documentation pages.
To the slick package list...