chore: use go fix to enhance codebase (#29)
This pull request modernizes the codebase by adopting Go 1.21+ features, including built-in functions like min and max, standard library iterators such as strings.SplitSeq and strings.FieldsSeq, utility functions like maps.Copy and slices.Contains, and string manipulation helpers like strings.Cut and strings.CutPrefix. Feedback is provided on a test file where the usage of strings.Builder can be further optimized to avoid unnecessary string allocations during concatenation. `go fix -diff ./...`
This commit is contained in:
@@ -102,8 +102,8 @@ func ScanPosixAliases(files []string) map[string]string {
|
||||
|
||||
func ParseAliases(data string) map[string]string {
|
||||
aliases := make(map[string]string)
|
||||
lines := strings.Split(data, "\n")
|
||||
for _, line := range lines {
|
||||
lines := strings.SplitSeq(data, "\n")
|
||||
for line := range lines {
|
||||
line = strings.TrimSpace(line)
|
||||
if !strings.HasPrefix(line, "alias ") {
|
||||
continue
|
||||
@@ -115,12 +115,12 @@ func ParseAliases(data string) map[string]string {
|
||||
|
||||
pairs := SplitAliasTokens(body)
|
||||
for _, pair := range pairs {
|
||||
eqIdx := strings.IndexByte(pair, '=')
|
||||
if eqIdx < 0 {
|
||||
before, after, ok := strings.Cut(pair, "=")
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
key := strings.TrimSpace(pair[:eqIdx])
|
||||
val := strings.Trim(strings.TrimSpace(pair[eqIdx+1:]), `"'`)
|
||||
key := strings.TrimSpace(before)
|
||||
val := strings.Trim(strings.TrimSpace(after), `"'`)
|
||||
if key != "" && val != "" {
|
||||
aliases[key] = val
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user