scalus.uplc.PlutusV3
See thePlutusV3 companion object
final case class PlutusV3[A] extends CompiledPlutus[A]
A compiled Plutus V3 script.
This is the primary type for working with compiled Cardano smart contracts in Scalus. It holds the intermediate representation (SIR), compilation options, and lazily computes the final UPLC program and script.
Plutus V3 was introduced in the Conway hard fork. It adds BLS12-381 elliptic curve operations, bitwise primitives, and more efficient case/constr optimization.
Type parameters
- A
-
the Scala type of the compiled code
Value parameters
- lazyCode
-
a thunk that evaluates to the original Scala code
- optimizer
-
the UPLC optimizer to apply (if optimization is enabled)
- options
-
compiler options controlling lowering and optimization
- sir
-
the Scalus Intermediate Representation
Attributes
- Example
-
given scalus.compiler.Options = scalus.compiler.Options.release val validator = PlutusV3.compile((datum: Data) => ...) val scriptHash = validator.script.scriptHash val address = validator.address(Network.Testnet) - Companion
- object
- Graph
-
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CompiledPlutus[A]trait Compiled[A]class Objecttrait Matchableclass Any
Members list
In this article