# Functions
Format takes source code and performs simple whitespace changes to transform it to a canonical layout style.
NewBlock constructs a new, empty block with the given type name and labels.
NewEmptyFile constructs a new file with no content, ready to be mutated by other calls that append to its body.
NewExpressionAbsTraversal constructs an expression that represents the given traversal, which must be absolute or this function will panic.
NewExpressionLiteral constructs an an expression that represents the given literal value.
NewExpressionRaw constructs an expression containing the given raw tokens.
NewFile creates a new file object that is empty and ready to have constructs added t it.
ParseConfig interprets the given source bytes into a *hclwrite.File.
TokensForFunctionCall returns a sequence of tokens that represents call to the function with the given name, using the argument tokens to populate the argument expressions.
TokensForIdentifier returns a sequence of tokens representing just the given identifier.
TokensForObject returns a sequence of tokens that represents an object constructor, with attribute name/value pairs populated from the given list of attribute token objects.
TokensForTraversal returns a sequence of tokens that represents the given traversal.
TokensForTuple returns a sequence of tokens that represents a tuple constructor, with element expressions populated from the given list of tokens.
TokensForValue returns a sequence of tokens that represents the given constant value.
# Structs
ObjectAttrTokens represents the raw tokens for the name and value of one attribute in an object constructor expression.
Token is a single sequence of bytes annotated with a type.
Traversal represents a sequence of variable, attribute, and/or index operations.
# Type aliases
Tokens is a flat list of tokens.