Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Language.Bitcoin.Miniscript.Witness
Synopsis
- satisfy :: ChainState -> SatisfactionContext -> Miniscript -> Either SatisfactionError Script
- data SatisfactionContext
- satisfactionContext :: [(ByteString, ByteString)] -> [(PubKeyI, Signature)] -> SatisfactionContext
- signature :: PubKeyI -> Signature -> SatisfactionContext
- preimage :: ByteString -> ByteString -> SatisfactionContext
- lookupSignature :: PubKeyI -> SatisfactionContext -> Maybe Signature
- lookupPreimage :: ByteString -> SatisfactionContext -> Maybe ByteString
- data ChainState = ChainState {}
- emptyChainState :: ChainState
- data Signature = Signature {}
- data SatisfactionError
Documentation
satisfy :: ChainState -> SatisfactionContext -> Miniscript -> Either SatisfactionError Script Source #
Compute a scriptinput which satisfies this miniscript
data SatisfactionContext Source #
Instances
Monoid SatisfactionContext Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods mempty :: SatisfactionContext # mappend :: SatisfactionContext -> SatisfactionContext -> SatisfactionContext # | |
Semigroup SatisfactionContext Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods (<>) :: SatisfactionContext -> SatisfactionContext -> SatisfactionContext # sconcat :: NonEmpty SatisfactionContext -> SatisfactionContext # stimes :: Integral b => b -> SatisfactionContext -> SatisfactionContext # | |
Show SatisfactionContext Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods showsPrec :: Int -> SatisfactionContext -> ShowS # show :: SatisfactionContext -> String # showList :: [SatisfactionContext] -> ShowS # | |
Eq SatisfactionContext Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods (==) :: SatisfactionContext -> SatisfactionContext -> Bool # (/=) :: SatisfactionContext -> SatisfactionContext -> Bool # |
satisfactionContext :: [(ByteString, ByteString)] -> [(PubKeyI, Signature)] -> SatisfactionContext Source #
signature :: PubKeyI -> Signature -> SatisfactionContext Source #
Use with the monoid instance to add a signature to the SatisfactionContext
Arguments
:: ByteString | hash |
-> ByteString | preimage |
-> SatisfactionContext |
Use with the monoid instance to add preimage to the SatisfactionContext
lookupSignature :: PubKeyI -> SatisfactionContext -> Maybe Signature Source #
data ChainState Source #
Constructors
ChainState | |
Instances
Show ChainState Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods showsPrec :: Int -> ChainState -> ShowS # show :: ChainState -> String # showList :: [ChainState] -> ShowS # | |
Eq ChainState Source # | |
Defined in Language.Bitcoin.Miniscript.Witness |
data SatisfactionError Source #
Constructors
MissingSignature [KeyDescriptor] | |
MissingPreimage ByteString | |
FreeVariable Text | |
TypeError Text Miniscript | |
Impossible | |
AbstractKey KeyDescriptor |
Instances
Exception SatisfactionError Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods toException :: SatisfactionError -> SomeException # | |
Show SatisfactionError Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods showsPrec :: Int -> SatisfactionError -> ShowS # show :: SatisfactionError -> String # showList :: [SatisfactionError] -> ShowS # | |
Eq SatisfactionError Source # | |
Defined in Language.Bitcoin.Miniscript.Witness Methods (==) :: SatisfactionError -> SatisfactionError -> Bool # (/=) :: SatisfactionError -> SatisfactionError -> Bool # |