diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-10-28 02:54:02 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-10-28 02:54:02 +0900 |
| commit | 7e3ba55cdc4d4a7c19deb65879e8abbb12a8e458 (patch) | |
| tree | 8479f6d73fde5d27c8c06d37f610376530443071 /internal/rosa/azalea/azalea.go | |
| parent | a491746ce9cdad4e0dce184ad2441733fadaa78a (diff) | |
internal/rosa/azalea: treat keys as standard value
This allows expressions like string concatenation for the KV key part.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/azalea/azalea.go')
| -rw-r--r-- | internal/rosa/azalea/azalea.go | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/internal/rosa/azalea/azalea.go b/internal/rosa/azalea/azalea.go index bd24ef4e..5e044214 100644 --- a/internal/rosa/azalea/azalea.go +++ b/internal/rosa/azalea/azalea.go @@ -121,10 +121,7 @@ func (p *parser) parseVal() (v Val) { type Array []Val // A KV holds a key/value pair. -type KV struct { - K String - V Val -} +type KV struct{ K, V Val } // An Arg represents an argument of [Func]. type Arg struct { @@ -235,9 +232,8 @@ func (p *parser) parseExpr() any { p.scan() return v - case scanner.String: - pair := KV{K: p.parseString()} - p.scan() + default: + pair := KV{K: p.parseVal()} switch p.tok { case ';': break @@ -252,9 +248,6 @@ func (p *parser) parseExpr() any { panic(ExprError(p.tok)) } v = append(v, pair) - - default: - panic(ExprError(p.tok)) } } |
