func()

in rules/resource_block.go [122:146]


func (b *ResourceBlock) buildArgs(attributes hclsyntax.Attributes) {
	resourceBlock := queryBlockSchema(b.ParentBlockNames)
	for _, attr := range attributesByLines(attributes) {
		attrName := attr.Name
		arg := buildAttrArg(attr, b.File)
		if IsHeadMeta(attrName) {
			b.addHeadMetaArg(arg)
			continue
		}
		if IsTailMeta(attrName) {
			b.addTailMetaArg(arg)
			continue
		}
		if resourceBlock == nil {
			b.addOptionalAttr(arg)
			continue
		}
		attrSchema, isAzAttr := resourceBlock.Attributes[attrName]
		if isAzAttr && attrSchema.Required {
			b.addRequiredAttr(arg)
		} else {
			b.addOptionalAttr(arg)
		}
	}
}