Merge pull request #9171 from ellemouton/genUnsignedTLVRanges

tlv: generate types for gossip unsigned range
This commit is contained in:
Oliver Gugger 2024-10-16 16:04:17 +02:00 committed by GitHub
commit af6b88a9f6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 4043 additions and 3 deletions

View File

@ -8,14 +8,29 @@ import (
)
const (
numberOfTypes uint32 = 100
numberOfTypes uint32 = 300
// customTypeStart defines the beginning of the custom TLV type range as
// defined in BOLT-01.
customTypeStart uint32 = 65536
defaultOutputFile = "tlv_types_generated.go"
customTypeStart uint32 = 65536
// pureTLVSecondSignedTypeRangeStart defines the first TLV type of the
// second defined signed TLV range used in pure TLV messages.
pureTLVSecondSignedTypeRangeStart uint32 = 1000000000
// pureTLVSecondUnsignedTypeRangeStart defines the first TLV type of the
// second defined unsigned TLV range used in pure TLV messages.
pureTLVSecondUnsignedTypeRangeStart uint32 = 3000000000
defaultOutputFile = "tlv_types_generated.go"
)
// typeMarkers defines any adhoc TLV types we want to generate.
var typeMarkers = map[uint32]struct{}{
pureTLVSecondSignedTypeRangeStart: {},
pureTLVSecondUnsignedTypeRangeStart: {},
}
const typeCodeTemplate = `// Code generated by tlv/internal/gen; DO NOT EDIT.
package tlv
@ -50,6 +65,11 @@ func main() {
items[i] = struct{}{}
}
// We'll also generate any marker types.
for t := range typeMarkers {
items[t] = struct{}{}
}
tpl, err := template.New("tlv").Parse(typeCodeTemplate)
if err != nil {
panic(err)

File diff suppressed because it is too large Load Diff