scalus.compiler.sir.SIR
See theSIR companion trait
object SIR
Attributes
Members list
Type members
Classlikes
case class And(a: AnnotatedSIR, b: AnnotatedSIR, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Apply(f: AnnotatedSIR, arg: AnnotatedSIR, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Builtin(bn: DefaultFun, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
case class Cast(term: AnnotatedSIR, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Const(uplcConst: Constant, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
object Const
case class Constr(name: String, data: DataDecl, args: List[SIR], tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait SIRclass Objecttrait Matchableclass AnyShow all
case class Error(msg: AnnotatedSIR, anns: AnnotationsDecl, cause: Throwable | Null = ...) extends AnnotatedSIR
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
object Error
case class ExternalVar(moduleName: String, name: String, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class IfThenElse(cond: AnnotatedSIR, t: AnnotatedSIR, f: AnnotatedSIR, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class LamAbs(param: Var, term: SIR, typeParams: List[TypeVar], anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Let(bindings: List[Binding], body: SIR, flags: LetFlags, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
object LetFlags
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
LetFlags.type
case class Match(scrutinee: AnnotatedSIR, cases: List[Case], tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Match expression.
Match expression.
Value parameters
- tp
-
- resulting type of Match expression, can be calculated as max(tp of all cases)
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Not(a: AnnotatedSIR, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Or(a: AnnotatedSIR, b: AnnotatedSIR, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
object Pattern
case class Select(scrutinee: SIR, field: String, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
case class Var(name: String, tp: SIRType, anns: AnnotationsDecl) extends AnnotatedSIR
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait AnnotatedSIRtrait SIRclass Objecttrait Matchableclass AnyShow all
Types
Inherited and Abstract types
The names of the product elements
The names of the product elements
Attributes
- Inherited from:
- Mirror
The name of the type
The name of the type
Attributes
- Inherited from:
- Mirror
Value members
Concrete methods
Substitute all free occurrences of variable varName with replacement in sir. Properly tracks shadowing through lambda, let, and match bindings.
Substitute all free occurrences of variable varName with replacement in sir. Properly tracks shadowing through lambda, let, and match bindings.
Attributes
In this article