Skip to main content

No project description provided

Project description

hcl2-ast

A HCL2 parser and evaluator based on python-hcl2 that produces an Abstract Syntax Tree.

Note: This project is in an early stage. It does not currently cover all HCL2 syntax features and does not have good test coverage.

Usage

from hcl2_ast import parse_string

module = parse_string("""
  hello {
    name = "World"
  }
""")

print(module.pformat())

Outputs:

Module(body=[
  Block(
    name='hello',
    args=[],
    body=[
      Attribute(key='name', value=Literal(value='World')),
    ]
  ),
])

Also check out the hcl2-eval package to evaluate HCL2 configuration ASTs.

Compatibility

hcl2-ast requires Python 3.6 or higher.

Known issues

  • No understanding of operator precedence in expressions (grouping with parentheses works as expected)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hcl2-ast-0.4.0.tar.gz (6.0 kB view hashes)

Uploaded Source

Built Distribution

hcl2_ast-0.4.0-py3-none-any.whl (6.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page