Documentation
¶
Overview ¶
Package puppet is a pure-Go (cgo-free) implementation of the Puppet language.
This root package is a thin façade over the pipeline sub-packages:
- github.com/go-puppet/puppet/lexer — the tokenizer;
- github.com/go-puppet/puppet/parser — the recursive-descent parser;
- github.com/go-puppet/puppet/ast — the Puppet::Pops-style syntax model.
Parse compiles a manifest into an ast.Program; ParseExpression parses a single expression. The evaluator and catalog compiler build on this model.
Everything is pure Go: no cgo, so it cross-compiles to and runs on every 64-bit Go target, and links into a static binary by default.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Parse ¶
Parse parses a complete Puppet manifest into its ast.Program.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package ast defines the abstract-syntax model for the Puppet language — the Go analogue of Puppet's Puppet::Pops::Model.
|
Package ast defines the abstract-syntax model for the Puppet language — the Go analogue of Puppet's Puppet::Pops::Model. |
|
Package catalog is the compiled-catalog model produced by the evaluator: a graph of resources with containment and relationship edges, serializable to the Puppet catalog JSON shape.
|
Package catalog is the compiled-catalog model produced by the evaluator: a graph of resources with containment and relationship edges, serializable to the Puppet catalog JSON shape. |
|
Package eval evaluates a parsed Puppet manifest (ast.Program) into a catalog.Catalog.
|
Package eval evaluates a parsed Puppet manifest (ast.Program) into a catalog.Catalog. |
|
Package hcl is a Terraform-style HCL2 front-end for Puppet.
|
Package hcl is a Terraform-style HCL2 front-end for Puppet. |
|
Package lexer turns Puppet source into a token stream.
|
Package lexer turns Puppet source into a token stream. |
|
Package parser turns Puppet source into an ast tree (the Puppet::Pops model).
|
Package parser turns Puppet source into an ast tree (the Puppet::Pops model). |
Click to show internal directories.
Click to hide internal directories.
