Class: RubyNext::Language::TransformContext
- Inherits:
-
Object
- Object
- RubyNext::Language::TransformContext
- Defined in:
- lib/ruby-next/language.rb
Instance Attribute Summary collapse
-
#use_ruby_next ⇒ Object
(also: #use_ruby_next?)
readonly
Returns the value of attribute use_ruby_next.
-
#versions ⇒ Object
readonly
Returns the value of attribute versions.
Instance Method Summary collapse
- #dirty? ⇒ Boolean
-
#initialize ⇒ TransformContext
constructor
A new instance of TransformContext.
- #min_version ⇒ Object
- #sorted_versions ⇒ Object
-
#track!(rewriter) ⇒ Object
Called by rewriter when it performs transfomrations.
- #use_ruby_next! ⇒ Object
Constructor Details
#initialize ⇒ TransformContext
Returns a new instance of TransformContext.
34 35 36 37 38 39 40 |
# File 'lib/ruby-next/language.rb', line 34 def initialize # Minimum supported RubyNext version @min_version = MIN_SUPPORTED_VERSION @dirty = false @versions = Set.new @use_ruby_next = false end |
Instance Attribute Details
#use_ruby_next ⇒ Object (readonly) Also known as: use_ruby_next?
Returns the value of attribute use_ruby_next.
32 33 34 |
# File 'lib/ruby-next/language.rb', line 32 def use_ruby_next @use_ruby_next end |
#versions ⇒ Object (readonly)
Returns the value of attribute versions.
32 33 34 |
# File 'lib/ruby-next/language.rb', line 32 def versions @versions end |
Instance Method Details
#dirty? ⇒ Boolean
54 55 56 |
# File 'lib/ruby-next/language.rb', line 54 def dirty? @dirty == true end |
#min_version ⇒ Object
58 59 60 |
# File 'lib/ruby-next/language.rb', line 58 def min_version versions.min end |
#sorted_versions ⇒ Object
62 63 64 |
# File 'lib/ruby-next/language.rb', line 62 def sorted_versions versions.to_a.sort end |
#track!(rewriter) ⇒ Object
Called by rewriter when it performs transfomrations
43 44 45 46 |
# File 'lib/ruby-next/language.rb', line 43 def track!(rewriter) @dirty = true versions << rewriter.class::MIN_SUPPORTED_VERSION end |
#use_ruby_next! ⇒ Object
48 49 50 |
# File 'lib/ruby-next/language.rb', line 48 def use_ruby_next! @use_ruby_next = true end |