NativeListOperations

scalus.compiler.intrinsics.NativeListOperations

Native list operations — implementations with Unwrapped TypeVars.

Each generic type parameter carries @UplcRepr(TypeVar(Unwrapped)) so element bytes flow through in their stable default representation. find is intentionally NOT annotated — its Option.Some / Option.None if-then-else body exposes a lowering issue (Option.None doesn't propagate the target's annotated type-args when constructed under a @UplcRepr(UplcConstr) parent). Without the annotation, the Fixed-default lowering still works (this matched the historical behaviour, since the legacy IntrinsicResolver.stampTransparent call for this support module was a no-op due to a string-mismatch typo).

This is a support module — bindings are resolved on demand when referenced from intrinsic bodies. IntrinsicsNativeList delegates to these methods.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def contains[A](self: List[A], elem: A, eq: (A, A) => Boolean): Boolean
def deleteFirst[A](self: List[A], elem: A, eq: (A, A) => Boolean): List[A]
def diff[A](self: List[A], other: List[A], eq: (A, A) => Boolean): List[A]
def distinct[A](self: List[A], eq: (A, A) => Boolean): List[A]
def filter[A](self: List[A], predicate: A => Boolean): List[A]
def find[A](self: List[A], predicate: A => Boolean): Option[A]
def foldLeft[A, B](self: List[A], init: B, combiner: (B, A) => B): B
def foldRight[A, B](self: List[A], init: B, combiner: (A, B) => B): B
def indexOf[A](self: List[A], elem: A, eq: (A, A) => Boolean): BigInt
def map[A, B](self: List[A], mapper: A => B): List[B]

Concrete fields

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