diff --git a/filter/awsv4upgrade/aws_s3_bucket.go b/filter/awsv4upgrade/aws_s3_bucket.go index 183883b..bc96606 100644 --- a/filter/awsv4upgrade/aws_s3_bucket.go +++ b/filter/awsv4upgrade/aws_s3_bucket.go @@ -36,7 +36,7 @@ func NewAWSS3BucketFilter() editor.Filter { // Remove redundant TokenNewLine tokens in the resource block after removing nested blocks. // Since VerticalFormat clears tokens internally, we should call it at the end. - &verticalFormatterFilter{}, + tfeditor.NewVerticalFormatterResourceFilter(), } return &AWSS3BucketFilter{filters: filters} } diff --git a/filter/awsv4upgrade/vertical_format.go b/tfeditor/filter_vertical_formatter.go similarity index 54% rename from filter/awsv4upgrade/vertical_format.go rename to tfeditor/filter_vertical_formatter.go index 9a2679c..6bb8ff0 100644 --- a/filter/awsv4upgrade/vertical_format.go +++ b/tfeditor/filter_vertical_formatter.go @@ -1,21 +1,25 @@ -package awsv4upgrade +package tfeditor import ( - "github.com/minamijoyo/tfedit/tfeditor" "github.com/minamijoyo/tfedit/tfwrite" ) -// verticalFormatterFilter is a Filter implementation to format HCL in vertical. +// VerticalFormatterFilter is a filter implementation to format HCL in vertical. // At time of writing, the default hcl formatter does not support vertical // formatting. However, it's useful in some cases such as removing a block // because leading and trailing newline tokens don't belong to a block, so // deleting a block leaves extra newline tokens. -type verticalFormatterFilter struct{} +type VerticalFormatterFilter struct{} -var _ tfeditor.ResourceFilter = (*verticalFormatterFilter)(nil) +var _ ResourceFilter = (*VerticalFormatterFilter)(nil) + +// NewVerticalFormatterResourceFilter creates a new instance of VerticalFormatterFilter as ResourceFilter. +func NewVerticalFormatterResourceFilter() ResourceFilter { + return &VerticalFormatterFilter{} +} // ResourceFilter reads HCL and writes formatted contents in vertical. -func (f *verticalFormatterFilter) ResourceFilter(inFile *tfwrite.File, resource *tfwrite.Resource) (*tfwrite.File, error) { +func (f *VerticalFormatterFilter) ResourceFilter(inFile *tfwrite.File, resource *tfwrite.Resource) (*tfwrite.File, error) { resource.VerticalFormat() return inFile, nil