diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2025-10-25 16:18:00 -0700 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2025-10-25 17:27:52 -0700 |
| commit | d952f0cafc8e90a6ebb826db491d9f18cf4dd1d7 (patch) | |
| tree | 1a069e82fcbc24042abd8d90d2417018adee7499 /internal/ini/ini.go | |
| parent | Revert "Remove CSRF tokens" (diff) | |
| download | roseh.moe-d952f0cafc8e90a6ebb826db491d9f18cf4dd1d7.tar.zst | |
Use asspb instead of ini
Diffstat (limited to 'internal/ini/ini.go')
| -rw-r--r-- | internal/ini/ini.go | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/internal/ini/ini.go b/internal/ini/ini.go deleted file mode 100644 index c546a52..0000000 --- a/internal/ini/ini.go +++ /dev/null @@ -1,51 +0,0 @@ -package ini - -import ( - "bufio" - "errors" - "io" - "iter" - "strings" -) - -type Parser struct { - Section string - LineNumber int -} - -type KeyVal struct { - Key, Val string -} - -func (p *Parser) Parse(r io.Reader) iter.Seq2[KeyVal, error] { - return func(yield func(KeyVal, error) bool) { - *p = Parser{} - scanner := bufio.NewScanner(r) - for scanner.Scan() { - p.LineNumber++ - line := strings.TrimSpace(scanner.Text()) - if len(line) == 0 || strings.HasPrefix(line, "//") || strings.HasPrefix(line, ";") || strings.HasPrefix(line, "#") { - continue - } - if strings.HasPrefix(line, "[") && strings.HasSuffix(line, "]") { - p.Section = strings.TrimSpace(line[1 : len(line)-1]) - continue - } - key, val, ok := strings.Cut(line, "=") - if !ok { - if !yield(KeyVal{}, errors.New("invalid key-value pair")) { - return - } - continue - } - key, val = strings.TrimSpace(key), strings.TrimSpace(val) - if !yield(KeyVal{key, val}, nil) { - return - } - } - if err := scanner.Err(); err != nil { - yield(KeyVal{}, err) - return - } - } -} |
