Class: Parser::Rewriter Deprecated
- Inherits:
-
AST::Processor
- Object
- AST::Processor
- Parser::Rewriter
- Extended by:
- Deprecation
- Defined in:
- lib/parser/rewriter.rb
Overview
Use TreeRewriter
Rewriter is deprecated. Use TreeRewriter instead. It has a backwards compatible API and uses Source::TreeRewriter instead of Source::Rewriter. Please check the documentation for Source::Rewriter for details.
Constant Summary collapse
- DEPRECATION_WARNING =
[ 'Parser::Rewriter is deprecated.', 'Please update your code to use Parser::TreeRewriter instead' ].join("\n").freeze
Instance Attribute Summary
Attributes included from Deprecation
Instance Method Summary collapse
-
#assignment?(node) ⇒ Boolean
Returns
trueif the specified node is an assignment node, returns false otherwise. -
#initialize ⇒ Rewriter
constructor
A new instance of Rewriter.
-
#insert_after(range, content) ⇒ Object
Inserts new code after the given source range.
-
#insert_before(range, content) ⇒ Object
Inserts new code before the given source range.
-
#remove(range) ⇒ Object
Removes the source range.
-
#replace(range, content) ⇒ Object
Replaces the code of the source range
rangewithcontent. -
#rewrite(source_buffer, ast) ⇒ String
Rewrites the AST/source buffer and returns a String containing the new version.
-
#wrap(range, before, after) ⇒ Object
Wraps the given source range with the given values.
Methods included from Deprecation
Constructor Details
Instance Method Details
#assignment?(node) ⇒ Boolean
Returns true if the specified node is an assignment node, returns false
otherwise.
38 39 40 |
# File 'lib/parser/rewriter.rb', line 38 def assignment?(node) [:lvasgn, :ivasgn, :gvasgn, :cvasgn, :casgn].include?(node.type) end |
#insert_after(range, content) ⇒ Object
Inserts new code after the given source range.
77 78 79 |
# File 'lib/parser/rewriter.rb', line 77 def insert_after(range, content) @source_rewriter.insert_after(range, content) end |
#insert_before(range, content) ⇒ Object
Inserts new code before the given source range.
67 68 69 |
# File 'lib/parser/rewriter.rb', line 67 def insert_before(range, content) @source_rewriter.insert_before(range, content) end |
#remove(range) ⇒ Object
Removes the source range.
47 48 49 |
# File 'lib/parser/rewriter.rb', line 47 def remove(range) @source_rewriter.remove(range) end |
#replace(range, content) ⇒ Object
Replaces the code of the source range range with content.
87 88 89 |
# File 'lib/parser/rewriter.rb', line 87 def replace(range, content) @source_rewriter.replace(range, content) end |
#rewrite(source_buffer, ast) ⇒ String
Rewrites the AST/source buffer and returns a String containing the new version.
23 24 25 26 27 28 29 |
# File 'lib/parser/rewriter.rb', line 23 def rewrite(source_buffer, ast) @source_rewriter = Source::Rewriter.new(source_buffer) process(ast) @source_rewriter.process end |
#wrap(range, before, after) ⇒ Object
Wraps the given source range with the given values.
57 58 59 |
# File 'lib/parser/rewriter.rb', line 57 def wrap(range, before, after) @source_rewriter.wrap(range, before, after) end |