Core structure
This commit is contained in:
@@ -1,5 +1,32 @@
|
||||
package domain64
|
||||
|
||||
func ReturnsTrue() bool {
|
||||
return true
|
||||
type Domain64 struct {
|
||||
// The TLD is FF
|
||||
TLD uint8
|
||||
// The Domain is FFFFFF, so the uint16 is the closest we'll get
|
||||
Domain uint16
|
||||
// Subdomains are FF
|
||||
Subdomain uint8
|
||||
// Paths are, again, FFFFFF
|
||||
Path uint16
|
||||
}
|
||||
|
||||
/*
|
||||
```mermaid
|
||||
packet-beta
|
||||
0-7: "FF | TLD"
|
||||
8-31: "FFFFFF | Domain"
|
||||
32-39: "FF | Subdomain"
|
||||
40-63: "FFFFFF | Path"
|
||||
```
|
||||
*/
|
||||
func (d64 *Domain64) AsInt64() int64 {
|
||||
var result int64 = 0
|
||||
result = result | (int64(d64.TLD) << (64 - 8))
|
||||
result = result | (int64(d64.Domain) << (64 - (8 + 24)))
|
||||
result = result | (int64(d64.Subdomain) << (64 - (8 + 24 + 8)))
|
||||
result = result | (int64(d64.Path) << (64 - (8 + 24 + 8 + 24)))
|
||||
return result
|
||||
}
|
||||
|
||||
// https://gobyexample.com/testing-and-benchmarking
|
||||
|
||||
Reference in New Issue
Block a user