package feature // Set is an enum identifying various feature sets, which separates the single // feature namespace into distinct categories depending what context a feature // vector is being used. type Set uint8 const ( // SetInit identifies features that should be sent in an Init message to // a remote peer. SetInit Set = iota // SetLegacyGlobal identifies features that should be set in the legacy // GlobalFeatures field of an Init message, which maintains backwards // compatibility with nodes that haven't implemented flat features. SetLegacyGlobal // SetNodeAnn identifies features that should be advertised on node // announcements. SetNodeAnn // SetInvoice identifies features that should be advertised on invoices // generated by the daemon. SetInvoice // SetInvoiceAmp identifies the features that should be advertised on // AMP invoices generated by the daemon. SetInvoiceAmp ) // String returns a human-readable description of a Set. func (s Set) String() string { switch s { case SetInit: return "SetInit" case SetLegacyGlobal: return "SetLegacyGlobal" case SetNodeAnn: return "SetNodeAnn" case SetInvoice: return "SetInvoice" case SetInvoiceAmp: return "SetInvoiceAmp" default: return "SetUnknown" } }