5
0
mirror of https://github.com/cwinfo/matterbridge.git synced 2024-11-28 20:41:35 +00:00
matterbridge/vendor/golang.org/x/net/publicsuffix/table.go

71 lines
1.8 KiB
Go
Raw Normal View History

2021-10-16 21:11:32 +00:00
// generated by go run gen.go; DO NOT EDIT
package publicsuffix
2023-01-28 21:57:53 +00:00
import _ "embed"
const version = "publicsuffix.org's public_suffix_list.dat, git revision e248cbc92a527a166454afe9914c4c1b4253893f (2022-11-15T18:02:38Z)"
2021-10-16 21:11:32 +00:00
const (
2022-11-26 23:42:16 +00:00
nodesBits = 40
2021-10-16 21:11:32 +00:00
nodesBitsChildren = 10
nodesBitsICANN = 1
2022-11-26 23:42:16 +00:00
nodesBitsTextOffset = 16
2021-10-16 21:11:32 +00:00
nodesBitsTextLength = 6
childrenBitsWildcard = 1
childrenBitsNodeType = 2
childrenBitsHi = 14
childrenBitsLo = 14
)
const (
nodeTypeNormal = 0
nodeTypeException = 1
nodeTypeParentOnly = 2
)
// numTLD is the number of top level domains.
2023-01-28 21:57:53 +00:00
const numTLD = 1494
2021-10-16 21:11:32 +00:00
2023-01-28 21:57:53 +00:00
// text is the combined text of all labels.
//
//go:embed data/text
var text string
2021-10-16 21:11:32 +00:00
2022-11-26 23:42:16 +00:00
// nodes is the list of nodes. Each node is represented as a 40-bit integer,
// which encodes the node's children, wildcard bit and node type (as an index
// into the children array), ICANN bit and text.
2021-10-16 21:11:32 +00:00
//
2022-11-26 23:42:16 +00:00
// The layout within the node, from MSB to LSB, is:
2022-04-25 21:50:10 +00:00
//
2022-11-26 23:42:16 +00:00
// [ 7 bits] unused
2021-10-16 21:11:32 +00:00
// [10 bits] children index
// [ 1 bits] ICANN bit
2022-11-26 23:42:16 +00:00
// [16 bits] text index
2021-10-16 21:11:32 +00:00
// [ 6 bits] text length
2023-01-28 21:57:53 +00:00
//
//go:embed data/nodes
var nodes uint40String
2021-10-16 21:11:32 +00:00
// children is the list of nodes' children, the parent's wildcard bit and the
// parent's node type. If a node has no children then their children index
// will be in the range [0, 6), depending on the wildcard bit and node type.
//
// The layout within the uint32, from MSB to LSB, is:
2022-04-25 21:50:10 +00:00
//
2021-10-16 21:11:32 +00:00
// [ 1 bits] unused
// [ 1 bits] wildcard bit
// [ 2 bits] node type
// [14 bits] high nodes index (exclusive) of children
// [14 bits] low nodes index (inclusive) of children
2023-01-28 21:57:53 +00:00
//
//go:embed data/children
var children uint32String
2021-10-16 21:11:32 +00:00
2023-01-28 21:57:53 +00:00
// max children 718 (capacity 1023)
// max text offset 32976 (capacity 65535)
2021-10-16 21:11:32 +00:00
// max text length 36 (capacity 63)
2023-01-28 21:57:53 +00:00
// max hi 9656 (capacity 16383)
// max lo 9651 (capacity 16383)