Struct lightning_invoice::RawInvoice
source · pub struct RawInvoice {
pub hrp: RawHrp,
pub data: RawDataPart,
}
Expand description
Represents an syntactically correct Invoice for a payment on the lightning network, but without the signature information. De- and encoding should not lead to information loss but may lead to different hashes.
For methods without docs see the corresponding methods in Invoice
.
Fields§
§hrp: RawHrp
human readable part
data: RawDataPart
data part
Implementations§
source§impl RawInvoice
impl RawInvoice
sourcepub fn signable_hash(&self) -> [u8; 32]
pub fn signable_hash(&self) -> [u8; 32]
Calculate the hash of the encoded RawInvoice
which should be signed.
sourcepub fn sign<F, E>(self, sign_method: F) -> Result<SignedRawInvoice, E>where
F: FnOnce(&Message) -> Result<RecoverableSignature, E>,
pub fn sign<F, E>(self, sign_method: F) -> Result<SignedRawInvoice, E>where
F: FnOnce(&Message) -> Result<RecoverableSignature, E>,
Signs the invoice using the supplied sign_function
. This function MAY fail with an error
of type E
. Since the signature of a SignedRawInvoice
is not required to be valid there
are no constraints regarding the validity of the produced signature.
(C-not exported) As we don’t currently support passing function pointers into methods explicitly.
sourcepub fn known_tagged_fields(
&self
) -> FilterMap<Iter<'_, RawTaggedField>, fn(_: &RawTaggedField) -> Option<&TaggedField>>
pub fn known_tagged_fields(
&self
) -> FilterMap<Iter<'_, RawTaggedField>, fn(_: &RawTaggedField) -> Option<&TaggedField>>
Returns an iterator over all tagged fields with known semantics.
(C-not exported) As there is not yet a manual mapping for a FilterMap
pub fn payment_hash(&self) -> Option<&Sha256>
pub fn description(&self) -> Option<&Description>
pub fn payee_pub_key(&self) -> Option<&PayeePubKey>
pub fn description_hash(&self) -> Option<&Sha256>
pub fn expiry_time(&self) -> Option<&ExpiryTime>
pub fn min_final_cltv_expiry(&self) -> Option<&MinFinalCltvExpiry>
pub fn payment_secret(&self) -> Option<&PaymentSecret>
pub fn features(&self) -> Option<&InvoiceFeatures>
sourcepub fn fallbacks(&self) -> Vec<&Fallback> ⓘ
pub fn fallbacks(&self) -> Vec<&Fallback> ⓘ
(C-not exported) as we don’t support Vec<&NonOpaqueType>
pub fn private_routes(&self) -> Vec<&PrivateRoute> ⓘ
pub fn amount_pico_btc(&self) -> Option<u64>
pub fn currency(&self) -> Currency
Trait Implementations§
source§impl Clone for RawInvoice
impl Clone for RawInvoice
source§fn clone(&self) -> RawInvoice
fn clone(&self) -> RawInvoice
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more