Packages

p

com.daml.lf

engine

package engine

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class CreateEvent(contractId: ContractId, templateId: Identifier, contractKey: Option[KeyWithMaintainers], argument: Value, agreementText: String, signatories: Set[Party], observers: Set[Party], witnesses: Set[Party]) extends Event with Product with Serializable

    Event for created contracts, follows ledger api event protocol

    Event for created contracts, follows ledger api event protocol

    contractId

    id for the contract this event notifies

    templateId

    identifier of the creating template

    contractKey

    key for the contract this event notifies

    argument

    argument of the contract creation

    signatories

    as defined by the template

    observers

    as defined by the template or implicitly as choice controllers

    witnesses

    additional witnesses induced by parent exercises

  2. class Engine extends AnyRef

    Allows for evaluating Commands and validating Transactions.

    Allows for evaluating Commands and validating Transactions.

    This class does not dereference contract ids or package ids on its own. Instead, when an instance of this class needs to dereference a contract id or package id, it returns a ResultNeedContract or ResultNeedPackage to the caller. The caller can then resume the computation by calling result.resume. The engine may or may not cache and reuse the provided contract instance or package.

    The caller must dereference contract and package ids consistently, i.e., if the same engine returns result1 and result2, result1 and result2 request to dereference the same contract or package id, and the caller invokes result1.resume(x1) and result2.resume(x2), then x1 must equal x2.

    The caller may deference ids inconsistently across different engines. Namely, if two different engines return result1 and result2, then the caller may call result1.resume(x1) and result2.resume(x2) with x1 != x2, even if result1 and result2 request to dereference the same id.

    The class requires a pseudo random generator (nextRandomInt) to randomize the submission time. This generator does not have to be cryptographically secure.

    This class is thread safe as long nextRandomInt is.

  3. final case class EngineConfig(allowedLanguageVersions: VersionRange[LanguageVersion], packageValidation: Boolean = true, stackTraceMode: Boolean = false, profileDir: Option[Path] = None, contractKeyUniqueness: ContractKeyUniquenessMode = ContractKeyUniquenessMode.On, forbidV0ContractId: Boolean = false, requireSuffixedGlobalContractId: Boolean = false, limits: Limits = interpretation.Limits.Lenient) extends Product with Serializable

    The Engine configurations describes the versions of language and transaction the engine is allowed to read and write together with engine debugging feature.

    The Engine configurations describes the versions of language and transaction the engine is allowed to read and write together with engine debugging feature.

    allowedLanguageVersions

    The range of language versions the engine is allowed to load. The engine will crash if it asked to load a language version that is not included in this range.

    stackTraceMode

    The flag enables the runtime support for stack trace.

    profileDir

    The optional specifies the directory where to save the output of the Daml scenario profiler. The profiler is disabled if the option is empty.

  4. class EngineInfo extends AnyRef
  5. sealed abstract class Error extends AnyRef
  6. sealed trait Event extends Product with Serializable
  7. final case class ExerciseEvent(contractId: ContractId, templateId: Identifier, choice: ChoiceName, choiceArgument: Value, actingParties: Set[Party], isConsuming: Boolean, children: ImmArray[NodeId], stakeholders: Set[Party], witnesses: Set[Party], exerciseResult: Option[Value]) extends Event with Product with Serializable

    Event for exercises

    Event for exercises

    contractId

    contract id for the target contract

    templateId

    identifier of the exercised contract template

    choice

    choice exercised

    choiceArgument

    arguments given to the choice

    actingParties

    parties acting in the exercise

    isConsuming

    marks if this exercise archived the target contract

    children

    consequence events. note that they're paired with the NodeId of the transaction that originated the event.

    stakeholders

    the stakeholders of the target contract -- must be a subset of witnesses.

    witnesses

    additional witnesses induced by parent exercises

    exerciseResult

    result of exercise of the choice. Optional since this feature was introduced in transaction version 6.

  8. abstract class MutableCompiledPackages extends CompiledPackages

    Trait that extends CompiledPackages with the ability to add new packages.

  9. sealed trait Result[+A] extends Product with Serializable

    many operations require to look up packages and contracts.

    many operations require to look up packages and contracts. we do this by allowing our functions to pause and resume after the contract has been fetched.

  10. final case class ResultDone[A](result: A) extends Result[A] with Product with Serializable
  11. final case class ResultError(err: Error) extends Result[Nothing] with Product with Serializable
  12. final case class ResultNeedContract[A](acoid: ContractId, resume: (Option[VersionedContractInstance]) => Result[A]) extends Result[A] with Product with Serializable

    Intermediate result indicating that a ContractInstance is required to complete the computation.

    Intermediate result indicating that a ContractInstance is required to complete the computation. To resume the computation, the caller must invoke resume with the following argument:

    • Some(contractInstance), if the caller can dereference acoid to contractInstance
    • None, if the caller is unable to dereference acoid
  13. final case class ResultNeedKey[A](key: GlobalKeyWithMaintainers, resume: (Option[ContractId]) => Result[A]) extends Result[A] with Product with Serializable
  14. final case class ResultNeedPackage[A](packageId: PackageId, resume: (Option[Package]) => Result[A]) extends Result[A] with Product with Serializable

    Intermediate result indicating that a Package is required to complete the computation.

    Intermediate result indicating that a Package is required to complete the computation. To resume the computation, the caller must invoke resume with the following argument:

    • Some(package), if the caller can dereference packageId to package
    • None, if the caller is unable to dereference packageId
  15. final class ValueEnricher extends AnyRef

Value Members

  1. object Blinding
  2. object ConcurrentCompiledPackages
  3. object Engine
  4. object Error
  5. object Event extends Serializable
  6. object Result extends Serializable
  7. object ResultDone extends Serializable
  8. object ResultError extends Serializable

Ungrouped