in base_config.go [235:256]
func (c *BaseConfig) ReadVariablesFromSingleVarFile(fileContent []byte, fileName string) (map[string]VariableValueRead, error) {
parser := &varFileParserImpl{dslAbbreviation: c.dslAbbreviation}
file, err := parser.ParseFile(fileContent, filepath.Base(fileName))
if err != nil {
return nil, err
}
attributes, diag := file.Body.JustAttributes()
if diag.HasErrors() {
return nil, diag
}
reads := make(map[string]VariableValueRead)
for _, attr := range attributes {
value, diag := attr.Expr.Value(nil)
var err error
if diag.HasErrors() {
err = diag
}
reads[attr.Name] = NewVariableValueRead(attr.Name, &value, err)
}
return reads, nil
}