Packages

case class WellFormedTransaction[+S <: State] extends Product with Serializable

Used to mark a transaction to be well-formed. That means:

  • tx is well-formed according to the Daml-LF definition, i.e., a root node is not child of another node and every non-root node has exactly one parent and is reachable from a root node. (No cycles, no sharing, no orphaned node).
  • All node Ids are non-negative.
  • The type parameter S determines whether all create nodes have suffixed IDs or none.
  • Create nodes have unique contract ids of shape com.daml.lf.value.Value.ContractId.V1. The contract id of a create node is not referenced before the node. The contract id of a rolled back create node is not referenced outside its rollback scope.
  • The discriminators of create nodes without suffixed contract ids are unique among all discriminators that appear in the transaction.
  • Every action node has at least one signatory.
  • Every signatory is also a stakeholder.
  • Fetch actors are defined.
  • All created contract instances and choice arguments in the transaction can be serialized.
  • All nodes in the transaction have the optLocation field set to None.
  • metadata contains seeds exactly for those node IDs from tx that should have a seed (creates and exercises).
  • Keys of transaction nodes don't contain contract IDs.
  • The maintainers of keys are non-empty.
  • ByKey nodes have a key.
  • All parties referenced by the transaction can be converted to com.digitalasset.canton.topology.PartyId
  • The transaction has the optUsedPackages set to scala.None$
  • Every rollback node has at least one child and no rollback node appears at the root unless the transaction has been merged by Canton.
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. WellFormedTransaction
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  8. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  9. val metadata: TransactionMetadata
  10. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  12. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. def productElementNames: Iterator[String]
    Definition Classes
    Product
  14. def seedFor(nodeId: LfNodeId): Option[LfHash]
  15. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  16. def tryAdjustNodeIds(offset: Int): WellFormedTransaction[S]

    Adjust the node IDs in an LF transaction by the given (positive or negative) offset

    Adjust the node IDs in an LF transaction by the given (positive or negative) offset

    For example, an offset of 1 increases the NodeId of every node by 1. Ensures that the transaction stays wellformed.

    Exceptions thrown

    java.lang.IllegalArgumentException if offset is negative or a node ID overflow would occur

  17. def unwrap: LfVersionedTransaction
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  20. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. def withoutVersion: LfTransaction

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped