UplcConstrOptionOperations

scalus.compiler.intrinsics.UplcConstrOptionOperations

Native-Constr Option operations — support-module bindings.

Every Option[_] in the signatures is explicitly annotated @UplcRepr(UplcConstr) so the support-op body operates on native-Constr Options regardless of the caller's policy. Type parameters are @UplcRepr(TypeVar(Unwrapped)) — element bytes are in A's stable default representation, unaffected by any policy switch (there isn't one anymore).

Callers (the dispatcher in IntrinsicsUplcConstrOption) receive the user's Option in whatever shape and rely on the standard representation-conversion machinery to pass a SumUplcConstr value here. The match in each body is consequently always a genMatchUplcConstr destructure.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def contains[A](self: Option[A], elem: A, eq: (A, A) => Boolean): Boolean
def exists[A](self: Option[A], predicate: A => Boolean): Boolean
def filter[A](self: Option[A], predicate: A => Boolean): Option[A]
def flatMap[A, B](self: Option[A], mapper: A => Option[B]): Option[B]
def forall[A](self: Option[A], predicate: A => Boolean): Boolean
def get[A](self: Option[A]): A
def getOrElse[A](self: Option[A], default: A): A
def isDefined[A](self: Option[A]): Boolean
def isEmpty[A](self: Option[A]): Boolean
def map[A, B](self: Option[A], mapper: A => B): Option[B]

Concrete fields

lazy val sirDeps: List[SIRModuleWithDeps]
lazy val sirModule: Module