PatternModule

org.finos.morphir.ir.internal.PatternModule
See thePatternModule companion object

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Value
Self type

Members list

Type members

Types

final type APattern = Pattern[Attributes]
final type Pattern[+A] = Pattern[A]
final type UPattern = Pattern[Unit]

Value members

Concrete methods

final def asAlias[A](attributes: A, alias: String): Pattern[A]
final def asAlias[A](attributes: A, alias: Name): Pattern[A]
final def asAlias(alias: String): UPattern
final def asAlias(alias: Name): UPattern
def asPattern[A](attributes: A, pattern: Pattern[A], name: Name)(implicit ev: NeedsAttributes[A]): Pattern[A]
final def asPattern[A](attributes: A, pattern: Pattern[A], alias: String): Pattern[A]
def asPattern(pattern: UPattern, name: Name): UPattern
final def asPattern(pattern: UPattern, alias: String): UPattern
final def booleanPattern[A](attributes: A, value: Boolean): Pattern[A]
final def booleanPattern(value: Boolean): UPattern
final def constructorPattern[A](attributes: A, constructorName: FQName, argumentPatterns: Chunk[Pattern[A]]): Pattern[A]
final def constructorPattern[A](attributes: A, constructorName: String, argumentPatterns: Chunk[Pattern[A]]): Pattern[A]
final def constructorPattern(constructorName: String, argumentPatterns: Chunk[UPattern]): UPattern
final def constructorPattern(constructorName: FQName, argumentPatterns: Chunk[UPattern]): UPattern
final def decimalPattern[A](attributes: A, value: BigDecimal): Pattern[A]
final def decimalPattern(value: BigDecimal): UPattern
final def emptyListPattern[A](attributes: A): Pattern[A]
final def falsePattern[A](attributes: A): Pattern[A]
final def falsePattern: UPattern
final def floatPattern[A](attributes: A, value: Float): Pattern[A]
final def floatPattern(value: Float): UPattern
final def headTailPattern[A](attributes: A, headPattern: Pattern[A], tailPattern: Pattern[A]): Pattern[A]
def headTailPattern(headPattern: UPattern, tailPattern: UPattern): UPattern
final def intPattern[A](attributes: A, value: Int): Pattern[A]
final def intPattern(value: Int): UPattern
final def literalPattern[A](attributes: A, value: Literal): Pattern[A]
final def literalPattern(value: Literal): UPattern
final def stringPattern[A](attributes: A, value: String): Pattern[A]
final def stringPattern(value: String): UPattern
final def toString[A](pattern: Pattern[A]): String
final def truePattern[A](attributes: A): Pattern[A]
final def truePattern: UPattern
final def tuplePattern[A](attributes: A, patterns: Chunk[Pattern[A]]): Pattern[A]

Destructure a tuple using a pattern for every element

Destructure a tuple using a pattern for every element

Attributes

final def tuplePattern[A](attributes: A, patterns: Pattern[A]*)(implicit ev: Not[A <:< Pattern[_]]): Pattern[A]
final def tuplePattern(patterns: Chunk[UPattern]): UPattern
final def tuplePattern(patterns: UPattern*): UPattern
final def unitPattern: UPattern
final def unitPattern[A](attributes: A): Pattern[A]
def wildcardPattern[A](attributes: A)(implicit ev: NeedsAttributes[A]): Pattern[A]

Concrete fields

final val Pattern: Pattern.type