summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2023-10-30 10:33:27 -0400
committergit <svn-admin@ruby-lang.org>2023-10-31 12:28:58 +0000
commitb0a2373e14d475cfcf6ce21d25cbde2518c0dddc (patch)
tree9dc6fb41cd23c3efda1d51c72f72f71a4728ea68
parent322755a0076e74e5959c9f6b2682be79a60cef4e (diff)
[ruby/prism] Share comment generation logic
https://github.com/ruby/prism/commit/6e5556dbdf
-rw-r--r--prism/templates/lib/prism/node.rb.erb4
-rwxr-xr-xprism/templates/template.rb4
2 files changed, 6 insertions, 2 deletions
diff --git a/prism/templates/lib/prism/node.rb.erb b/prism/templates/lib/prism/node.rb.erb
index affd2875ea..b7efe33523 100644
--- a/prism/templates/lib/prism/node.rb.erb
+++ b/prism/templates/lib/prism/node.rb.erb
@@ -32,8 +32,8 @@ module Prism
end
<%- nodes.each do |node| -%>
- <%- node.comment.each_line do |line| -%>
- #<%= line.prepend(" ").rstrip %>
+ <%- node.each_comment_line do |line| -%>
+ #<%= line %>
<%- end -%>
class <%= node.name -%> < Node
<%- node.fields.each do |field| -%>
diff --git a/prism/templates/template.rb b/prism/templates/template.rb
index 46dbf88f4f..abd0976c41 100755
--- a/prism/templates/template.rb
+++ b/prism/templates/template.rb
@@ -255,6 +255,10 @@ module Prism
@comment = config.fetch("comment")
end
+ def each_comment_line
+ comment.each_line { |line| yield line.prepend(" ").rstrip }
+ end
+
def semantic_fields
@semantic_fields ||= @fields.select(&:semantic_field?)
end