0d6247f4cf
A BlockLabelSpec can be placed in the nested spec structure of one of the block specs to require and obtain labels on that block. This is a more generic methodology than BlockMapSpec since it allows the result to be a list or set with the labels inside the values, rather than forcing all the label tuples to be unique and losing the ordering by collapsing into a map structure.
15 lines
613 B
Go
15 lines
613 B
Go
package hcldec
|
|
|
|
// Verify that all of our spec types implement the necessary interfaces
|
|
var objectSpecAsSpec Spec = ObjectSpec(nil)
|
|
var tupleSpecAsSpec Spec = TupleSpec(nil)
|
|
var attrSpecAsSpec Spec = (*AttrSpec)(nil)
|
|
var literalSpecAsSpec Spec = (*LiteralSpec)(nil)
|
|
var exprSpecAsSpec Spec = (*ExprSpec)(nil)
|
|
var blockSpecAsSpec Spec = (*BlockSpec)(nil)
|
|
var blockListSpecAsSpec Spec = (*BlockListSpec)(nil)
|
|
var blockSetSpecAsSpec Spec = (*BlockSetSpec)(nil)
|
|
var blockMapSpecAsSpec Spec = (*BlockMapSpec)(nil)
|
|
var blockLabelSpecAsSpec Spec = (*BlockLabelSpec)(nil)
|
|
var defaultSpecAsSpec Spec = (*DefaultSpec)(nil)
|