Mutator

scalus.cardano.ledger.rules.STS.Mutator
See theMutator companion trait
object Mutator

Attributes

Companion
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Mutator.type

Members list

Value members

Concrete methods

def apply[ErrorT <: TransactionException](mutator: (Mutator#Context, Mutator#State, Mutator#Event) => Mutator { type Error = ErrorT; }#Result, mutatorName: String = ...): Mutator { type Error = ErrorT; }
def apply[ErrorT <: TransactionException](mutators: Iterable[Mutator { type Error <: ErrorT; }], mutatorName: String): Mutator { type Error = ErrorT; }
def apply[ErrorT <: TransactionException](mutators: Iterable[Mutator { type Error <: ErrorT; }]): Mutator { type Error = ErrorT; }
def apply[ErrorT <: TransactionException](validators: Iterable[Validator { type Error <: ErrorT; }], mutators: Iterable[Mutator { type Error <: ErrorT; }], mutatorName: String): Mutator { type Error = ErrorT; }
def apply[ErrorT <: TransactionException](validators: Iterable[Validator { type Error <: ErrorT; }], mutators: Iterable[Mutator { type Error <: ErrorT; }]): Mutator { type Error = ErrorT; }
def success(state: STS#State): Mutator { type Error = Nothing; }#Result
def transit[ErrorT <: TransactionException](mutators: Iterable[Mutator { type Error <: ErrorT; }], context: Mutator#Context, state: Mutator#State, event: Mutator#Event): Mutator { type Error = ErrorT; }#Result

Applies the mutators in order.

Applies the mutators in order.

Attributes

def transit[ErrorT <: TransactionException](validators: Iterable[Validator { type Error <: ErrorT; }], mutators: Iterable[Mutator { type Error <: ErrorT; }], context: Mutator#Context, state: Mutator#State, event: Mutator#Event): Mutator { type Error = ErrorT; }#Result
def transitAll(validators: Iterable[Validator], mutators: Iterable[Mutator], context: Mutator#Context, state: Mutator#State, event: Mutator#Event): Either[Seq[TransactionException], Mutator#State]

Every failure of event, as the ledger collects them, spec [FL-1]: the failures of all validators, then of all mutators, in the order of the ledger's interpreter, spec [FL-7a]. Right holds the state after the mutators when nothing fails.

Every failure of event, as the ledger collects them, spec [FL-1]: the failures of all validators, then of all mutators, in the order of the ledger's interpreter, spec [FL-7a]. Right holds the state after the mutators when nothing fails.

Every validator and every mutator runs, whatever an earlier one returned; a mutator that fails passes its input state to the next one, spec [FL-2]. GovMutator reports each of its failures, and PlutusScriptsTransactionMutator reports its collect errors in every case and evaluates the scripts only when nothing failed before it, as whenFailureFree does, spec [FL-5]. The Bad*InputsUTxOExceptions that repeat a part of BadAllInputsUTxOException are dropped, spec [FL-4]. The list is sorted stably by the first ledger name of each failure, TransactionException.ledgerNames.

transit does not change: it stops at the first failure, in the iteration order of the sets, spec [FL-3].

Attributes