Class: RLSL::BaseTranslator::CodeRewriter
- Inherits:
-
Object
- Object
- RLSL::BaseTranslator::CodeRewriter
- Defined in:
- lib/rlsl/base_translator/code_rewriter.rb
Constant Summary collapse
- IDENTIFIER_PATTERN =
/[A-Za-z_][A-Za-z0-9_]*/
Instance Method Summary collapse
-
#initialize(code) ⇒ CodeRewriter
constructor
A new instance of CodeRewriter.
- #rewrite(identifier_replacements:, call_rewrites:, removed_identifiers:) ⇒ Object
Constructor Details
#initialize(code) ⇒ CodeRewriter
Returns a new instance of CodeRewriter.
11 12 13 |
# File 'lib/rlsl/base_translator/code_rewriter.rb', line 11 def initialize(code) @code = code.to_s end |
Instance Method Details
#rewrite(identifier_replacements:, call_rewrites:, removed_identifiers:) ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/rlsl/base_translator/code_rewriter.rb', line 15 def rewrite(identifier_replacements:, call_rewrites:, removed_identifiers:) rewrite_segment( @code, identifier_replacements: stringify_keys(identifier_replacements), call_rewrites: stringify_keys(call_rewrites), removed_identifiers: Array(removed_identifiers).map(&:to_s) ) end |