Forgot consts file

Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
This commit is contained in:
Christian Mesh
2026-04-22 15:35:11 -04:00
parent e41f646519
commit abd1ea7523

View File

@@ -0,0 +1,33 @@
package symlib
import (
"github.com/hashicorp/hcl/v2"
"github.com/hashicorp/hcl/v2/hclsyntax"
)
type Const struct {
Name string
Expr hcl.Expression
DeclRange hcl.Range
}
func decodeConstBlock(block *hcl.Block) ([]*Const, hcl.Diagnostics) {
var consts []*Const
attrs, diags := block.Body.JustAttributes()
for name, attr := range attrs {
if !hclsyntax.ValidIdentifier(name) {
diags = append(diags, &hcl.Diagnostic{
Severity: hcl.DiagError,
Summary: "Invalid const value name",
Detail: badIdentifierDetail,
Subject: &attr.NameRange,
})
}
consts = append(consts, &Const{
Name: name,
Expr: attr.Expr,
DeclRange: attr.Range,
})
}
return consts, diags
}