summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2021-05-09 19:56:25 -0600
committermo khan <mo@mokhan.ca>2021-05-09 19:56:25 -0600
commita7f40094fb2f305ec4d05403070e81edda2e350e (patch)
tree9aaeb1f16f1be3bcb5e1fc849da1e9546cdbc66b /lib
parent90299819eec8848ca52b57a45c14f6eff8b58772 (diff)
feat: ignore multi-line comments
Diffstat (limited to 'lib')
-rw-r--r--lib/spandx/terraform/parsers/hcl.rb29
1 files changed, 4 insertions, 25 deletions
diff --git a/lib/spandx/terraform/parsers/hcl.rb b/lib/spandx/terraform/parsers/hcl.rb
index 2cb397d..94da2ab 100644
--- a/lib/spandx/terraform/parsers/hcl.rb
+++ b/lib/spandx/terraform/parsers/hcl.rb
@@ -23,8 +23,9 @@ module Spandx
rule(:space) { match('\s') }
rule(:tilda_wacka) { str('~>') }
rule(:version) { number >> dot >> number >> dot >> number >> pre_release? }
- rule(:line_comment) { str('#') >> ((str("\n") >> str("\r").maybe).absent? >> any).repeat >> eol }
- rule(:whitespace) { (line_comment | space).repeat }
+ rule(:comment) { (str('#') | str('//')) >> ((str("\n") >> str("\r").maybe).absent? >> any).repeat >> eol }
+ rule(:multiline_comment) { str('/*') >> (str('*/').absent? >> any).repeat >> str('*/') }
+ rule(:whitespace) { (multiline_comment | comment | space).repeat }
rule(:whitespace?) { whitespace.maybe }
rule(:greater_than_or_equal_to) { str('>=') }
@@ -92,29 +93,7 @@ module Spandx
block.repeat.as(:blocks)
end
- rule :comment do
- str('#') >> match('.').repeat >> eol
- line_comment
- end
-
- rule :comments do
- comment.repeat
- end
-
- rule :blank_line do
- eol
- end
-
- rule :blank_lines do
- blank_line.repeat
- end
-
- rule :hcl do
- # comments.maybe >> blank_lines.maybe >> blocks
- blocks
- end
-
- root(:hcl)
+ root(:blocks)
end
end
end