SIR

scalus.sir.SIR
enum SIR

Attributes

Graph
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
case Var
case Let
case LamAbs
case Apply
case Const
case And
case Or
case Not
case IfThenElse
case Builtin
case Error
case Decl
case Constr
case Match
Show all

Members list

Type members

Enum entries

final case class And(a: SIR, b: SIR) extends SIR
final case class Apply(f: SIR, arg: SIR) extends SIR
final case class Builtin(bn: DefaultFun) extends SIR
final case class Const(const: Constant) extends SIR
final case class Constr(name: String, data: DataDecl, args: List[SIR]) extends SIR
final case class Decl(data: DataDecl, term: SIR) extends SIR
final case class Error(msg: String) extends SIR
final case class ExternalVar(moduleName: String, name: String) extends SIR
final case class IfThenElse(cond: SIR, t: SIR, f: SIR) extends SIR
final case class LamAbs(name: String, term: SIR) extends SIR
final case class Let(recursivity: Recursivity, bindings: List[Binding], body: SIR) extends SIR
final case class Match(scrutinee: SIR, cases: List[Case]) extends SIR
final case class Not(a: SIR) extends SIR
final case class Or(a: SIR, b: SIR) extends SIR
final case class Var(name: String) extends SIR

Value members

Concrete methods

def doubleCborHex(version: (Int, Int, Int), generateErrorTraces: Boolean): String
Extension method from scalus
def pretty: Doc
Extension method from scalus
def toUplc(generateErrorTraces: Boolean): Term
Extension method from scalus