mirror of
https://github.com/v2fly/domain-list-community.git
synced 2026-02-24 14:50:40 +07:00
improve codes (#3246)
This commit is contained in:
@@ -33,9 +33,17 @@ type DomainList struct {
|
|||||||
func (d *DomainRule) domain2String() string {
|
func (d *DomainRule) domain2String() string {
|
||||||
var dstr strings.Builder
|
var dstr strings.Builder
|
||||||
dstr.Grow(len(d.Type) + len(d.Value) + 10)
|
dstr.Grow(len(d.Type) + len(d.Value) + 10)
|
||||||
fmt.Fprintf(&dstr, "%s:%s", d.Type, d.Value)
|
dstr.WriteString(d.Type)
|
||||||
if len(d.Attrs) != 0 {
|
dstr.WriteByte(':')
|
||||||
fmt.Fprintf(&dstr, ":@%s", strings.Join(d.Attrs, ",@"))
|
dstr.WriteString(d.Value)
|
||||||
|
for i, attr := range d.Attrs {
|
||||||
|
if i == 0 {
|
||||||
|
dstr.WriteByte(':')
|
||||||
|
} else {
|
||||||
|
dstr.WriteByte(',')
|
||||||
|
}
|
||||||
|
dstr.WriteByte('@')
|
||||||
|
dstr.WriteString(attr)
|
||||||
}
|
}
|
||||||
return dstr.String()
|
return dstr.String()
|
||||||
}
|
}
|
||||||
|
|||||||
14
main.go
14
main.go
@@ -156,9 +156,17 @@ func parseEntry(line string) (Entry, error) {
|
|||||||
// Formated plain entry: type:domain.tld:@attr1,@attr2
|
// Formated plain entry: type:domain.tld:@attr1,@attr2
|
||||||
var plain strings.Builder
|
var plain strings.Builder
|
||||||
plain.Grow(len(entry.Type) + len(entry.Value) + 10)
|
plain.Grow(len(entry.Type) + len(entry.Value) + 10)
|
||||||
fmt.Fprintf(&plain, "%s:%s", entry.Type, entry.Value)
|
plain.WriteString(entry.Type)
|
||||||
if len(entry.Attrs) != 0 {
|
plain.WriteByte(':')
|
||||||
fmt.Fprintf(&plain, ":@%s", strings.Join(entry.Attrs, ",@"))
|
plain.WriteString(entry.Value)
|
||||||
|
for i, attr := range entry.Attrs {
|
||||||
|
if i == 0 {
|
||||||
|
plain.WriteByte(':')
|
||||||
|
} else {
|
||||||
|
plain.WriteByte(',')
|
||||||
|
}
|
||||||
|
plain.WriteByte('@')
|
||||||
|
plain.WriteString(attr)
|
||||||
}
|
}
|
||||||
entry.Plain = plain.String()
|
entry.Plain = plain.String()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user