You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
608 B
Go
25 lines
608 B
Go
// Copyright (c) HashiCorp, Inc.
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
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
|
|
}
|