From e755e846c16ca8f92a4bccc385a2642ab9dba253 Mon Sep 17 00:00:00 2001 From: Konstantin Grachev Date: Mon, 29 Jan 2024 21:21:37 +0300 Subject: [PATCH] sort-cli: magic constants --- sort-cli/config.go | 4 +++- sort-cli/content.go | 7 +++++-- sort-cli/loader.go | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/sort-cli/config.go b/sort-cli/config.go index 5edf70d..0cd8c29 100644 --- a/sort-cli/config.go +++ b/sort-cli/config.go @@ -2,6 +2,8 @@ package main import "flag" +const stdin = "-" + type Config struct { Key int Numeric bool @@ -21,6 +23,6 @@ func (c *Config) ParseFlags() { c.Sources = flag.Args() if len(c.Sources) == 0 { - c.Sources = []string{"-"} + c.Sources = []string{stdin} } } diff --git a/sort-cli/content.go b/sort-cli/content.go index 5222972..daf9f6e 100644 --- a/sort-cli/content.go +++ b/sort-cli/content.go @@ -9,6 +9,9 @@ import ( "strings" ) +// NL New line constant +const NL = "\n" + type content [][]byte func (c *content) Sort(reverse bool) { @@ -42,14 +45,14 @@ func (c *content) String() string { for _, line := range lines { n += len(line) } - n += len(lines) * len("\n") + n += len(lines) * len(NL) var sb strings.Builder sb.Grow(n) for i, line := range lines { if i > 0 { - sb.WriteString("\n") + sb.WriteString(NL) } for _, rn := range line { diff --git a/sort-cli/loader.go b/sort-cli/loader.go index fb9857a..d9d336d 100644 --- a/sort-cli/loader.go +++ b/sort-cli/loader.go @@ -12,7 +12,7 @@ func open(sources []string) io.Reader { for _, source := range sources { var r io.Reader - if source == "-" { + if source == stdin { r = os.Stdin } else { if _, err := os.Stat(source); err != nil {