Back to

package json

v0.0.0 (fb75b32)
Latest Go to latest
Published: Oct 2, 2019 | License: MPL-2.0 | Module:


Package json is the JSON parser for HCL. It parses JSON files and returns implementations of the core HCL structural interfaces in terms of the JSON data inside.

This is not a generic JSON parser. Instead, it deals with the mapping from the JSON information model to the HCL information model, using a number of hard-coded structural conventions.


func Parse

func Parse(src []byte, filename string) (*hcl.File, hcl.Diagnostics)

Parse attempts to parse the given buffer as JSON and, if successful, returns a hcl.File for the HCL configuration represented by it.

This is not a generic JSON parser. Instead, it deals only with the profile of JSON used to express HCL configuration.

The returned file is valid only if the returned diagnostics returns false from its HasErrors method. If HasErrors returns true, the file represents the subset of data that was able to be parsed, which may be none.

func ParseFile

func ParseFile(filename string) (*hcl.File, hcl.Diagnostics)

ParseFile is a convenience wrapper around Parse that first attempts to load data from the given filename, passing the result to Parse if successful.

If the file cannot be read, an error diagnostic with nil context is returned.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
f or F : Jump to identifier