defmodule BitcoinLib.Signing.Psbt.Keypair do @moduledoc """ Extracts a keypair from a binary according to the [specification](https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki#specification) := := := """ defstruct [:key, :value] alias BitcoinLib.Signing.Psbt.Keypair alias BitcoinLib.Signing.Psbt.Keypair.{Key, Value} # TODO: document def extract_from(data) do {key, data} = extract_key(data) {value, data} = extract_value(data) {%Keypair{key: key, value: value}, data} end defp extract_key(data), do: Key.extract_from(data) defp extract_value(data), do: Value.extract_from(data) end