aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/query
diff options
context:
space:
mode:
authorJP Appel <jeanpierre.appel01@gmail.com>2025-05-05 14:58:20 -0400
committerJP Appel <jeanpierre.appel01@gmail.com>2025-05-05 14:58:20 -0400
commita3daeba8847e634fdf07f5865156f11f786ef5ad (patch)
treece458d4ff56a58d50343140898ffe61ec82fe82a /pkg/query
parent3e533e65f1baf26355675cfe244fd4da64e8807c (diff)
Remembered switch statements exist
Diffstat (limited to 'pkg/query')
-rw-r--r--pkg/query/outputs.go43
1 files changed, 22 insertions, 21 deletions
diff --git a/pkg/query/outputs.go b/pkg/query/outputs.go
index f258452..3938f4f 100644
--- a/pkg/query/outputs.go
+++ b/pkg/query/outputs.go
@@ -121,27 +121,27 @@ func parseOutputFormat(formatStr string) ([]OutputToken, []string, error) {
curTok = append(curTok, c)
if curTok[0] == '%' && len(curTok) == 2 {
- s := string(curTok)
- if s == "%%" {
+ switch string(curTok) {
+ case "%%":
strToks = append(strToks, "%")
toks = append(toks, OUT_TOK_STR)
- } else if s == "%p" {
+ case "%p":
toks = append(toks, OUT_TOK_PATH)
- } else if s == "%T" {
+ case "%T":
toks = append(toks, OUT_TOK_TITLE)
- } else if s == "%d" {
+ case "%d":
toks = append(toks, OUT_TOK_DATE)
- } else if s == "%f" {
+ case "%f":
toks = append(toks, OUT_TOK_FILETIME)
- } else if s == "%a" {
+ case "%a":
toks = append(toks, OUT_TOK_AUTHORS)
- } else if s == "%t" {
+ case "%t":
toks = append(toks, OUT_TOK_TAGS)
- } else if s == "%l" {
+ case "%l":
toks = append(toks, OUT_TOK_LINKS)
- } else if s == "%m" {
+ case "%m":
toks = append(toks, OUT_TOK_META)
- } else {
+ default:
return nil, nil, ErrUnrecognizedOutputToken
}
curTok = curTok[:0]
@@ -198,29 +198,30 @@ func (o CustomOutput) Output(docs []*index.Document) (string, error) {
func (o CustomOutput) writeDoc(b *strings.Builder, doc *index.Document) error {
curStrTok := 0
for _, token := range o.tokens {
- if token == OUT_TOK_STR {
+ switch token {
+ case OUT_TOK_STR:
if curStrTok >= len(o.stringTokens) {
return ErrExpectedMoreStringTokens
}
b.WriteString(o.stringTokens[curStrTok])
curStrTok++
- } else if token == OUT_TOK_PATH {
+ case OUT_TOK_PATH:
b.WriteString(doc.Path)
- } else if token == OUT_TOK_TITLE {
+ case OUT_TOK_TITLE:
b.WriteString(doc.Title)
- } else if token == OUT_TOK_DATE {
+ case OUT_TOK_DATE:
b.WriteString(doc.Date.Format(o.datetimeFormat))
- } else if token == OUT_TOK_FILETIME {
+ case OUT_TOK_FILETIME:
b.WriteString(doc.FileTime.Format(o.datetimeFormat))
- } else if token == OUT_TOK_AUTHORS {
+ case OUT_TOK_AUTHORS:
b.WriteString(strings.Join(doc.Authors, ", "))
- } else if token == OUT_TOK_TAGS {
+ case OUT_TOK_TAGS:
b.WriteString(strings.Join(doc.Tags, ", "))
- } else if token == OUT_TOK_LINKS {
+ case OUT_TOK_LINKS:
b.WriteString(strings.Join(doc.Links, ", "))
- } else if token == OUT_TOK_META {
+ case OUT_TOK_META:
b.WriteString(doc.OtherMeta)
- } else {
+ default:
return ErrUnrecognizedOutputToken
}
}