hcl/ext
Martin Atkins 55b607ac30 ext/tryfunc: Extension functions for error handling
The try(...) and can(...) functions are intended to make it more
convenient to work with deep data structures of unknown shape, by allowing
a caller to concisely try a complex traversal operation against a value
without having to guard against each possible failure mode individually.

These rely on the customdecode extension to get access to their argument
expressions directly, rather than only the results of evaluating those
expressions. The expressions can then be evaluated in a controlled manner
so that any resulting errors can be recognized and suppressed as
appropriate.
2019-12-17 07:51:07 -08:00
..
customdecode ext/customdecode: Custom expression decoding extension 2019-12-17 07:51:07 -08:00
dynblock ext/dynblock: Go package documentation 2019-10-01 15:59:10 -07:00
transform Unfold the "hcl" directory up into the root 2019-09-09 16:08:19 -07:00
tryfunc ext/tryfunc: Extension functions for error handling 2019-12-17 07:51:07 -08:00
typeexpr ext/customdecode: Custom expression decoding extension 2019-12-17 07:51:07 -08:00
userfunc Unfold the "hcl" directory up into the root 2019-09-09 16:08:19 -07:00
README.md

HCL Extensions

This directory contains some packages implementing some extensions to HCL that add features by building on the core API in the main hcl package.

These serve as optional language extensions for use-cases that are limited only to specific callers. Generally these make the language more expressive at the expense of increased dynamic behavior that may be undesirable for applications that need to impose more rigid structure on configuration.