| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Cooked.Skeleton.Output
Description
Synopsis
- class IsTxSkelOutAllowedOwner a where
- toPKHOrVScript :: a -> User IsEither Allocation
- data PayableKind where
- data Payable :: [PayableKind] -> Type where
- VisibleHashedDatum :: DatumConstrs a => a -> Payable '[IsDatum]
- InlineDatum :: DatumConstrs a => a -> Payable '[IsDatum]
- HiddenHashedDatum :: DatumConstrs a => a -> Payable '[IsDatum]
- ReferenceScript :: ToVScript s => s -> Payable '[IsReferenceScript]
- Value :: ToValue a => a -> Payable '[IsValue]
- FixedValue :: ToValue a => a -> Payable '[IsValue]
- StakingCredential :: ToMaybeStakingCredential cred => cred -> Payable '[IsStakingCredential]
- PayableAnd :: els ⩀ els' => Payable els -> Payable els' -> Payable (els ∪ els')
- data TxSkelOut where
- txSkelOutValueL :: Lens' TxSkelOut Value
- txSkelOutValueAutoAdjustL :: Lens' TxSkelOut Bool
- txSkelOutDatumL :: Lens' TxSkelOut TxSkelOutDatum
- txSkelOutMReferenceScriptL :: Lens' TxSkelOut (Maybe VScript)
- txSkelOutReferenceScriptAT :: AffineTraversal' TxSkelOut VScript
- txSkelOutMStakingCredentialL :: Lens' TxSkelOut (Maybe StakingCredential)
- txSkelOutStakingCredentialAT :: AffineTraversal' TxSkelOut StakingCredential
- txSkelOutCredentialG :: Getter TxSkelOut Credential
- txSkelOutAddressG :: Getter TxSkelOut Address
- txSkelOutReferenceScriptHashAF :: AffineFold TxSkelOut ScriptHash
- txSkelOutOwnerL :: Lens' TxSkelOut (User 'IsEither 'Allocation)
- (<&&>) :: els ⩀ els' => Payable els -> Payable els' -> Payable (els ∪ els')
- receives :: IsTxSkelOutAllowedOwner owner => owner -> Payable els -> TxSkelOut
Type constraints
class IsTxSkelOutAllowedOwner a where Source #
A conveniency typeclass to automated the creation of TxSkelOut owners, to
be used alongside Payable with the smart constructor receives.
Methods
toPKHOrVScript :: a -> User IsEither Allocation Source #
Instances
Data types
data PayableKind where Source #
The kind of possible components of a TxSkelOut, other than the owner
Constructors
| IsDatum :: PayableKind | |
| IsReferenceScript :: PayableKind | |
| IsValue :: PayableKind | |
| IsStakingCredential :: PayableKind |
data Payable :: [PayableKind] -> Type where Source #
Payable elements. Created from concrete elements or composed. Notice that
there is no way of building an element of Type Payable '[] so when using an
element of Type Payable els we are sure that something was in fact
paid. Also, there is no way of building an element of type Payable '[a,a]
so we also know at most one occurrence of each type of payment is performed.
Constructors
| VisibleHashedDatum :: DatumConstrs a => a -> Payable '[IsDatum] | Hashed datums visible in the transaction are payable |
| InlineDatum :: DatumConstrs a => a -> Payable '[IsDatum] | Inline datums are payable |
| HiddenHashedDatum :: DatumConstrs a => a -> Payable '[IsDatum] | Hashed datums hidden from the transaction are payable |
| ReferenceScript :: ToVScript s => s -> Payable '[IsReferenceScript] | Reference scripts are payable |
| Value :: ToValue a => a -> Payable '[IsValue] | Values are payable and are subject to min ada adjustment |
| FixedValue :: ToValue a => a -> Payable '[IsValue] | Fixed Values are payable but are NOT subject to min ada adjustment |
| StakingCredential :: ToMaybeStakingCredential cred => cred -> Payable '[IsStakingCredential] | Staking credentials are payable |
| PayableAnd :: els ⩀ els' => Payable els -> Payable els' -> Payable (els ∪ els') | Payables can be combined as long as their list of tags are disjoint |
An output to be put into a TxSkel
Constructors
| TxSkelOut | |
Fields
| |
Instances
Optics
txSkelOutDatumL :: Lens' TxSkelOut TxSkelOutDatum Source #
Optics focusing on the datum of a TxSkelOut
Focuses on the TxSkelOutDatum of this TxSkelOut
txSkelOutMReferenceScriptL :: Lens' TxSkelOut (Maybe VScript) Source #
Focuses on the Maybe VScript corresponding to the possible reference
script contained in this TxSkelOut
txSkelOutReferenceScriptAT :: AffineTraversal' TxSkelOut VScript Source #
Focuses on the reference script of this TxSkelOut
txSkelOutMStakingCredentialL :: Lens' TxSkelOut (Maybe StakingCredential) Source #
Focuses on the Maybe StakingCredential of this TxSkelOut
txSkelOutStakingCredentialAT :: AffineTraversal' TxSkelOut StakingCredential Source #
Focuses on the staking credential of this TxSkelOut
txSkelOutCredentialG :: Getter TxSkelOut Credential Source #
Returns the credential of this TxSkelOut
txSkelOutReferenceScriptHashAF :: AffineFold TxSkelOut ScriptHash Source #
Returns the possible reference script has of this TxSkelOut
txSkelOutOwnerL :: Lens' TxSkelOut (User 'IsEither 'Allocation) Source #
Focuses on the user of this TxSkelOut