32 lines
986 B
ReStructuredText
32 lines
986 B
ReStructuredText
Using HCL in a Go application
|
|
=============================
|
|
|
|
HCL is itself written in Go_ and currently it is primarily intended for use as
|
|
a library within other Go programs.
|
|
|
|
This section describes a number of different ways HCL can be used to define
|
|
and process a configuration language within a Go program. For simple situations,
|
|
HCL can decode directly into Go ``struct`` values in a similar way as encoding
|
|
packages such as ``encoding/json`` and ``encoding/xml``.
|
|
|
|
The HCL Go API also offers some alternative approaches however, for processing
|
|
languages that may be more complex or that include portions whose expected
|
|
structure cannot be determined until runtime.
|
|
|
|
The following sections give an overview of different ways HCL can be used in
|
|
a Go program.
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
:caption: Sub-sections:
|
|
|
|
go_parsing
|
|
go_diagnostics
|
|
go_decoding_gohcl
|
|
go_decoding_hcldec
|
|
go_expression_eval
|
|
go_decoding_lowlevel
|
|
go_patterns
|
|
|
|
.. _Go: https://golang.org/
|