Class Bolt12InvoiceFeatures


  • public class Bolt12InvoiceFeatures
    extends Object
    Features used within an `invoice`.
    • Method Detail

      • eq

        public boolean eq​(Bolt12InvoiceFeatures b)
        Checks if two Bolt12InvoiceFeaturess contain equal inner contents. This ignores pointers and is_owned flags and looks at the values in fields. Two objects with NULL inner values will be considered "equal" here.
      • requires_unknown_bits_from

        public boolean requires_unknown_bits_from​(Bolt12InvoiceFeatures other)
        Returns true if this `Features` object contains required features unknown by `other`.
      • requires_unknown_bits

        public boolean requires_unknown_bits()
        Returns true if this `Features` object contains unknown feature flags which are set as \"required\".
      • set_required_feature_bit

        public Result_NoneNoneZ set_required_feature_bit​(long bit)
        Sets a required feature bit. Errors if `bit` is outside the feature range as defined by [BOLT 9]. Note: Required bits are even. If an odd bit is given, then the corresponding even bit will be set instead (i.e., `bit - 1`). [BOLT 9]: https://github.com/lightning/bolts/blob/master/09-features.md
      • set_optional_feature_bit

        public Result_NoneNoneZ set_optional_feature_bit​(long bit)
        Sets an optional feature bit. Errors if `bit` is outside the feature range as defined by [BOLT 9]. Note: Optional bits are odd. If an even bit is given, then the corresponding odd bit will be set instead (i.e., `bit + 1`). [BOLT 9]: https://github.com/lightning/bolts/blob/master/09-features.md
      • set_required_custom_bit

        public Result_NoneNoneZ set_required_custom_bit​(long bit)
        Sets a required custom feature bit. Errors if `bit` is outside the custom range as defined by [bLIP 2] or if it is a known `T` feature. Note: Required bits are even. If an odd bit is given, then the corresponding even bit will be set instead (i.e., `bit - 1`). [bLIP 2]: https://github.com/lightning/blips/blob/master/blip-0002.md#feature-bits
      • set_optional_custom_bit

        public Result_NoneNoneZ set_optional_custom_bit​(long bit)
        Sets an optional custom feature bit. Errors if `bit` is outside the custom range as defined by [bLIP 2] or if it is a known `T` feature. Note: Optional bits are odd. If an even bit is given, then the corresponding odd bit will be set instead (i.e., `bit + 1`). [bLIP 2]: https://github.com/lightning/blips/blob/master/blip-0002.md#feature-bits
      • write

        public byte[] write()
        Serialize the Bolt12InvoiceFeatures object into a byte array which can be read by Bolt12InvoiceFeatures_read
      • set_basic_mpp_optional

        public void set_basic_mpp_optional()
        Set this feature as optional.
      • set_basic_mpp_required

        public void set_basic_mpp_required()
        Set this feature as required.
      • supports_basic_mpp

        public boolean supports_basic_mpp()
        Checks if this feature is supported.
      • requires_basic_mpp

        public boolean requires_basic_mpp()
        Checks if this feature is required.