SIRPattern

scalus.sir.SIRPattern
See theSIRPattern companion trait
object SIRPattern

Attributes

Companion
trait
Graph
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
SIRPattern.type

Members list

Type members

Classlikes

case class And(left: Option[SIRPattern], right: Option[SIRPattern]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Apply(f: Option[SIRPattern], arg: Option[SIRPattern], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Bind(name: String, pattern: Option[SIRPattern])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Binding(name: Option[String], tp: Option[SIRType], value: Option[SIR])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Builtin(name: Option[String], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Case(pattern: Option[CasePattern], body: Option[SIRPattern])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CasePattern

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
sealed trait CasePattern

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Const
class Constr
class Wildcard
case class Cast(term: Option[SIRPattern], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Const(value: Option[Constant], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Constr(name: Option[String], dataDeclName: Option[String], args: Option[List[SIRPattern]], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Error(msg: Option[SIRPattern], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class ExternalVar(moduleName: Option[String], name: Option[String], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class IfThenElse(cond: Option[SIRPattern], thenp: Option[SIRPattern], elsep: Option[SIRPattern]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class LamAbs(param: Option[Binding], term: Option[SIRPattern], typeParams: Option[List[SIRType]]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Let(binding: Option[Binding], body: Option[SIRPattern]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Match(scrutinee: Option[SIRPattern], cases: Option[List[Case]], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Not(term: Option[SIRPattern]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Or(left: Option[SIRPattern], right: Option[SIRPattern]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Select(scrutinee: Option[SIRPattern], field: Option[String], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all
case class Var(name: Option[String], tp: Option[SIRType]) extends SIRPattern

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait SIRPattern
class Object
trait Matchable
class Any
Show all

Inherited and Abstract types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Attributes

Inherited from:
Mirror