lnd-client-0.1.0.1: src/LndClient/Data/OutPoint.hs
module LndClient.Data.OutPoint (OutPoint (..)) where
import Data.ProtoLens.Message
import LndClient.Import
import qualified Proto.Lnrpc.Ln0 as LnGRPC
import qualified Proto.Lnrpc.Ln0_Fields as LnGRPC
data OutPoint = OutPoint
{ txid :: ByteString,
outputIndex :: Word32
}
deriving stock (Eq, Ord, Show, Generic)
instance Out OutPoint
instance ToGrpc OutPoint LnGRPC.OutPoint where
toGrpc x =
Right $
defMessage
& LnGRPC.txidBytes .~ txid x
& LnGRPC.outputIndex .~ outputIndex x
instance FromGrpc OutPoint LnGRPC.OutPoint where
fromGrpc x =
OutPoint
<$> fromGrpc (x ^. LnGRPC.txidBytes)
<*> fromGrpc (x ^. LnGRPC.outputIndex)