Class: RubyNext::Language::TransformContext
- Inherits:
-
Object
- Object
- RubyNext::Language::TransformContext
- Defined in:
- lib/ruby-next/language.rb
Instance Attribute Summary collapse
-
#path ⇒ Object
readonly
Returns the value of attribute path.
-
#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(path: nil) ⇒ 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(path: nil) ⇒ TransformContext
Returns a new instance of TransformContext.
34 35 36 37 38 39 40 41 |
# File 'lib/ruby-next/language.rb', line 34 def initialize(path: nil) @path = path # Minimum supported RubyNext version @min_version = MIN_SUPPORTED_VERSION @dirty = false @versions = Set.new @use_ruby_next = false end |
Instance Attribute Details
#path ⇒ Object (readonly)
Returns the value of attribute path.
32 33 34 |
# File 'lib/ruby-next/language.rb', line 32 def path @path end |
#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
55 56 57 |
# File 'lib/ruby-next/language.rb', line 55 def dirty? @dirty == true end |
#min_version ⇒ Object
59 60 61 |
# File 'lib/ruby-next/language.rb', line 59 def min_version versions.min end |
#sorted_versions ⇒ Object
63 64 65 |
# File 'lib/ruby-next/language.rb', line 63 def sorted_versions versions.to_a.sort end |
#track!(rewriter) ⇒ Object
Called by rewriter when it performs transfomrations
44 45 46 47 |
# File 'lib/ruby-next/language.rb', line 44 def track!(rewriter) @dirty = true versions << rewriter.class::MIN_SUPPORTED_VERSION end |
#use_ruby_next! ⇒ Object
49 50 51 |
# File 'lib/ruby-next/language.rb', line 49 def use_ruby_next! @use_ruby_next = true end |