6c4344623b
The main HCL package is more visible this way, and so it's easier than having to pick it out from dozens of other package directories.
22 lines
538 B
Go
22 lines
538 B
Go
package hcl
|
|
|
|
// BlockHeaderSchema represents the shape of a block header, and is
|
|
// used for matching blocks within bodies.
|
|
type BlockHeaderSchema struct {
|
|
Type string
|
|
LabelNames []string
|
|
}
|
|
|
|
// AttributeSchema represents the requirements for an attribute, and is used
|
|
// for matching attributes within bodies.
|
|
type AttributeSchema struct {
|
|
Name string
|
|
Required bool
|
|
}
|
|
|
|
// BodySchema represents the desired shallow structure of a body.
|
|
type BodySchema struct {
|
|
Attributes []AttributeSchema
|
|
Blocks []BlockHeaderSchema
|
|
}
|