Open KristianBalaj opened 1 year ago
Something to consider perhaps
I suggest that
txSignedBy :: [TxInfo] -> [PubKeyHash] -> [Bool]
is instead
signedByAll :: [PubKeyHash] -> [PubKeyHash] -> [Bool]
or some other variant. Once there are type classes etc. it can be an alias for list subset.
I don't like getContinuingOutputs/checkOwnOutput as they seem to be unnecessarily limiting in many cases, or encourage bad habits. Maybe we should have a compatibility library for all these ideas, and encourage datum/nft tagging etc. as alternatives.
Currently there are just 3 helper functions in the
aiken/transaction
module (i.e.find_script_outputs
,find_datum
,find_input
).I'm proposing to add further helper function inspired by PlutusTx:
findOwnInput
- https://input-output-hk.github.io/plutus/master/plutus-ledger-api/html/PlutusLedgerApi-V2-Contexts.html#v:findOwnInput - Resolves https://github.com/aiken-lang/stdlib/pull/44getContinuingOutputs
- https://input-output-hk.github.io/plutus/master/plutus-ledger-api/html/PlutusLedgerApi-V2-Contexts.html#v:getContinuingOutputstxSignedBy
- https://input-output-hk.github.io/plutus/master/plutus-ledger-api/html/PlutusLedgerApi-V2-Contexts.html#v:txSignedBycheckOwnOutput
- check whether there's an output with expected datum and value going to the same script as currently being validatedI will be adding further items to this list but at least these for now. I will be also adding PRs for those functions over time.