Should be possible to obtain the lines for a single attribute path from the parser.
Assuming
import (
parser "github.com/haproxytech/config-parser/v5"
)
...
p := parser.New(content, options)
Currently it's possible to obtain the parsed models for all supported attributes like
log, err := p.Get(parser.Global, parser.GlobalSectionName, "log") // ([]types.Log, error)
...
It's also possible to update the data associated with the same attribute
err := p.Set(parser.Global, parser.GlobalSectionName, "log", log)
One can also render the full config using
p.String()
Proposal In one of our use cases, we would like to obtain the resulting lines from such updates for a given attribute path. So e.g.
lines, err := p.Render(parser.Global, parser.GlobalSectionName, "log")
Currently the lack of such granular access prevents us from effectively using the Config Parser code for our use case.
(Happily) wiling to contribute code if this feature makes sense.
this is what Result function is doing in parsers right?, its just that is not exposed or available
if you are willing to contribute, we can discuss that (on objections on feature as long as it does not bring large complexity)