我将在golang
. 这里的例子。
package main
import (
"log"
"os"
"github.com/hashicorp/hcl"
)
const (
EXAMPLE_HCL = `config = "/etc/test.conf"`
)
type HCLConfig struct {
ConfigFile string `hcl:"config"`
}
func main() {
cfg := &HCLConfig{}
hclTree, err := hcl.Parse(EXAMPLE_HCL)
if err != nil {
os.Exit(1)
}
// how to modify tree to override config field
if err := hcl.DecodeObject(&cfg, hclTree); err != nil {
os.Exit(1)
}
log.Printf("%+v\n", cfg)
}
config
调用函数后可以覆盖字段hcl.DecodeObject
。
但我将在调用之前覆盖该字段hcl.DecodeObject
。
有没有办法修改 HCL 树?