Documentation ¶
Overview ¶
Package hcl decodes HCL into usable Go structures.
hcl input can come in either pure HCL format or JSON format. It can be parsed into an AST, and then decoded into a structure, or it can be decoded directly from a string into a structure.
If you choose to parse HCL into a raw AST, the benefit is that you can write custom visitor implementations to implement custom semantic checks. By default, HCL does not perform any semantic checks.
Index ¶
- func Decode(out interface{}, in string) error
- func DecodeObject(out interface{}, n ast.Node) error
- func Parse(input string) (*ast.File, error)
- func ParseBytes(in []byte) (*ast.File, error)
- func ParseString(input string) (*ast.File, error)
- func Unmarshal(bs []byte, v interface{}) error
- type Unmarshaler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecodeObject ¶
DecodeObject is a lower-level version of Decode. It decodes a raw Object into the given output.
func Parse ¶
Parse parses the given input and returns the root object.
The input format can be either HCL or JSON.
func ParseBytes ¶
ParseBytes accepts as input byte slice and returns ast tree.
Input can be either JSON or HCL
func ParseString ¶
ParseString accepts input as a string and returns ast tree.
Types ¶
type Unmarshaler ¶
Unmarshaler is the interface implemented by types that can unmarshal a HCL description of themselves. The input can be assumed to be a valid encoding of a HCL value.
Directories ¶
Path | Synopsis |
---|---|
hcl
|
|
ast
Package ast declares the types used to represent syntax trees for HCL (HashiCorp Configuration Language)
|
Package ast declares the types used to represent syntax trees for HCL (HashiCorp Configuration Language) |
parser
Package parser implements a parser for HCL (HashiCorp Configuration Language)
|
Package parser implements a parser for HCL (HashiCorp Configuration Language) |
printer
Package printer implements printing of AST nodes to HCL format.
|
Package printer implements printing of AST nodes to HCL format. |
scanner
Package scanner implements a scanner for HCL (HashiCorp Configuration Language) source text.
|
Package scanner implements a scanner for HCL (HashiCorp Configuration Language) source text. |
token
Package token defines constants representing the lexical tokens for HCL (HashiCorp Configuration Language)
|
Package token defines constants representing the lexical tokens for HCL (HashiCorp Configuration Language) |
json
|
|