.. _module-splice-amulet-tokenapiutils-32536: Splice.Amulet.TokenApiUtils =========================== Common utilities for implementing the token APIs for Amulet\. Typeclasses ----------- .. _class-splice-amulet-tokenapiutils-toanyvalue-45157: **class** `ToAnyValue `_ a **where** Values that can be converted to AnyValue .. _function-splice-amulet-tokenapiutils-toanyvalue-91682: `toAnyValue `_ \: a \-\> AnyValue **instance** `ToAnyValue `_ :ref:`TimeLock ` **instance** `ToAnyValue `_ `Bool `_ **instance** `ToAnyValue `_ `Decimal `_ **instance** `ToAnyValue `_ `Int `_ **instance** `ToAnyValue `_ `Text `_ **instance** `ToAnyValue `_ (`ContractId `_ t) **instance** `ToAnyValue `_ `Date `_ **instance** `ToAnyValue `_ `Party `_ **instance** `ToAnyValue `_ `Time `_ **instance** `ToAnyValue `_ `RelTime `_ **instance** `ToAnyValue `_ ChoiceContext **instance** `ToAnyValue `_ a \=\> `ToAnyValue `_ \[a\] .. _class-splice-amulet-tokenapiutils-fromanyvalue-31164: **class** `FromAnyValue `_ a **where** Attempt to parse a value from AnyValue\. If a type implements both ``ToAnyValue`` and ``FromAnyValue`` then it must hold that ``fromAnyValue (toAnyValue x) = Right x`` for all ``x``\. .. _function-splice-amulet-tokenapiutils-fromanyvalue-32255: `fromAnyValue `_ \: AnyValue \-\> `Either `_ `Text `_ a **instance** `FromAnyValue `_ :ref:`TimeLock ` **instance** `FromAnyValue `_ `Bool `_ **instance** `FromAnyValue `_ `Decimal `_ **instance** `FromAnyValue `_ `Int `_ **instance** `FromAnyValue `_ `Text `_ **instance** `Template `_ t \=\> `FromAnyValue `_ (`ContractId `_ t) **instance** `FromAnyValue `_ `Date `_ **instance** `FromAnyValue `_ `Party `_ **instance** `FromAnyValue `_ `Time `_ **instance** `FromAnyValue `_ `RelTime `_ **instance** `FromAnyValue `_ ChoiceContext **instance** `FromAnyValue `_ a \=\> `FromAnyValue `_ \[a\] Orphan Typeclass Instances -------------------------- **instance** `Semigroup `_ Metadata **instance** `Monoid `_ Metadata Data Types ---------- .. _type-splice-amulet-tokenapiutils-txkind-33822: **data** `TxKind `_ Internal type for the transaction kind\. .. _constr-splice-amulet-tokenapiutils-txkindtransfer-31504: `TxKind_Transfer `_ .. _constr-splice-amulet-tokenapiutils-txkindunlock-53359: `TxKind_Unlock `_ .. _constr-splice-amulet-tokenapiutils-txkindmergesplit-69091: `TxKind_MergeSplit `_ .. _constr-splice-amulet-tokenapiutils-txkindburn-1830: `TxKind_Burn `_ .. _constr-splice-amulet-tokenapiutils-txkindmint-40517: `TxKind_Mint `_ .. _constr-splice-amulet-tokenapiutils-txkindexpiredust-93818: `TxKind_ExpireDust `_ **instance** `Eq `_ `TxKind `_ Functions --------- .. _function-splice-amulet-tokenapiutils-spliceprefix-80926: `splicePrefix `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-amuletprefix-59772: `amuletPrefix `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-amuletinstrumentid-11366: `amuletInstrumentId `_ \: `Party `_ \-\> InstrumentId Shared definition of the instrument\-id used for amulets\. .. _function-splice-amulet-tokenapiutils-optionalmetadata-95597: `optionalMetadata `_ \: `Text `_ \-\> (a \-\> `Text `_) \-\> `Optional `_ a \-\> `TextMap `_ `Text `_ \-\> `TextMap `_ `Text `_ Add an optional metadata entry\. .. _function-splice-amulet-tokenapiutils-nonzerometadata-67227: `nonZeroMetadata `_ \: (`Eq `_ a, `Additive `_ a, `Show `_ a) \=\> `Text `_ \-\> a \-\> `TextMap `_ `Text `_ \-\> `TextMap `_ `Text `_ Add an metadata entry if it is non\-zero number\. .. _function-splice-amulet-tokenapiutils-createdinroundmetakey-43020: `createdInRoundMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-rateperroundmetakey-80476: `ratePerRoundMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-svrewardamountmetakey-76087: `svRewardAmountMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-apprewardamountmetakey-17776: `appRewardAmountMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-validatorrewardamountmetakey-47315: `validatorRewardAmountMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-apprewardbeneficiariesmetakey-63876: `appRewardBeneficiariesMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-apprewardbeneficiaryweightsmetakey-52370: `appRewardBeneficiaryWeightsMetaKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-reasonmetakey-98413: `reasonMetaKey `_ \: `Text `_ Short, human\-readable reason for the transaction\. .. _function-splice-amulet-tokenapiutils-txkindmetakey-86963: `txKindMetaKey `_ \: `Text `_ Kind of the transaction\. .. _function-splice-amulet-tokenapiutils-sendermetakey-57316: `senderMetaKey `_ \: `Text `_ The sender of a transfer\. .. _function-splice-amulet-tokenapiutils-burnedmetakey-57705: `burnedMetaKey `_ \: `Text `_ The amount of token holdings burned as part of a transaction\. .. _function-splice-amulet-tokenapiutils-holdingtxmeta-93547: `holdingTxMeta `_ \: `TxKind `_ \-\> `Optional `_ `Text `_ \-\> `Optional `_ `Party `_ \-\> `Optional `_ `Decimal `_ \-\> Metadata Build the metadata for a transaction affecting the amulet holdings\. .. _function-splice-amulet-tokenapiutils-txkindtotext-55602: `txKindToText `_ \: `TxKind `_ \-\> `Text `_ Exported for testing only .. _function-splice-amulet-tokenapiutils-simpleholdingtxmeta-84235: `simpleHoldingTxMeta `_ \: `TxKind `_ \-\> `Optional `_ `Text `_ \-\> `Optional `_ `Decimal `_ \-\> Metadata Simplified version for a few of the common cases\. .. _function-splice-amulet-tokenapiutils-amuletrulescontextkey-99644: `amuletRulesContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-openroundcontextkey-3213: `openRoundContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-featuredapprightcontextkey-84565: `featuredAppRightContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-transferpreapprovalcontextkey-6006: `transferPreapprovalContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-lockcontextkey-29271: `lockContextKey `_ \: `Text `_ The key used to embed all the lock specification in the choice context\. .. _function-splice-amulet-tokenapiutils-lockexpiresatcontextkey-3269: `lockExpiresAtContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-lockholderscontextkey-51785: `lockHoldersContextKey `_ \: `Text `_ .. _function-splice-amulet-tokenapiutils-lockcontextcontextkey-63153: `lockContextContextKey `_ \: `Text `_ The context description of a lock\. .. _function-splice-amulet-tokenapiutils-expirelockkey-74460: `expireLockKey `_ \: `Text `_ Key used to signal to a choice whether an expired locked amulet should be unlocked\. .. _function-splice-amulet-tokenapiutils-copyonlyburnmeta-62003: `copyOnlyBurnMeta `_ \: `Optional `_ Metadata \-\> Metadata Copy only the burn metadata\. Used for token standard choices to copy the burn from a transfer result\. .. _function-splice-amulet-tokenapiutils-beneficiariesfrommetadata-93977: `beneficiariesFromMetadata `_ \: Metadata \-\> `Either `_ `Text `_ (`Optional `_ \[AppRewardBeneficiary\]) .. _function-splice-amulet-tokenapiutils-parsecommaseparated-63776: `parseCommaSeparated `_ \: `Text `_ \-\> (`Text `_ \-\> `Optional `_ a) \-\> `Text `_ \-\> `Either `_ `Text `_ \[a\] .. _function-splice-amulet-tokenapiutils-addoptionalanyvalue-87443: `addOptionalAnyValue `_ \: `ToAnyValue `_ a \=\> `Text `_ \-\> `Optional `_ a \-\> `TextMap `_ AnyValue \-\> `TextMap `_ AnyValue Convenience function to create maps that contain an optional value if it is set\. See its use sites for examples\. .. _function-splice-amulet-tokenapiutils-lookupfromcontext-26074: `lookupFromContext `_ \: `FromAnyValue `_ a \=\> ChoiceContext \-\> `Text `_ \-\> `Either `_ `Text `_ (`Optional `_ a) Lookup and decode a value within a choice context\. .. _function-splice-amulet-tokenapiutils-getfromcontext-35521: `getFromContext `_ \: `FromAnyValue `_ a \=\> ChoiceContext \-\> `Text `_ \-\> `Either `_ `Text `_ a Get a value from a choice context, failing if it is not present or fails to parse\. .. _function-splice-amulet-tokenapiutils-lookupfromcontextu-72244: `lookupFromContextU `_ \: `FromAnyValue `_ a \=\> ChoiceContext \-\> `Text `_ \-\> `Update `_ (`Optional `_ a) Convenience version of ``lookupFromContext`` that raises the failure within the ``Update``\. .. _function-splice-amulet-tokenapiutils-getfromcontextu-55645: `getFromContextU `_ \: `FromAnyValue `_ a \=\> ChoiceContext \-\> `Text `_ \-\> `Update `_ a Convenience version of ``getFromContext`` that raises the failure within the ``Update``\.