Class: Thinreports::BasicReport::Layout::Version
- Inherits:
-
Object
- Object
- Thinreports::BasicReport::Layout::Version
- Defined in:
- lib/thinreports/basic_report/layout/version.rb
Constant Summary collapse
- COMPATIBLE_RULES =
['>= 0.8.0', '< 1.0.0'].freeze
- NEW_SCHEMA_FROM =
'0.9.0'
Class Method Summary collapse
Instance Method Summary collapse
- #compatible? ⇒ Boolean
-
#initialize(schema_version) ⇒ Version
constructor
A new instance of Version.
- #legacy? ⇒ Boolean
Constructor Details
#initialize(schema_version) ⇒ Version
Returns a new instance of Version.
16 17 18 |
# File 'lib/thinreports/basic_report/layout/version.rb', line 16 def initialize(schema_version) @schema_version = normalize_version(schema_version) end |
Class Method Details
.compatible_rules ⇒ Object
11 12 13 |
# File 'lib/thinreports/basic_report/layout/version.rb', line 11 def compatible_rules COMPATIBLE_RULES end |
Instance Method Details
#compatible? ⇒ Boolean
20 21 22 23 24 25 |
# File 'lib/thinreports/basic_report/layout/version.rb', line 20 def compatible? self.class.compatible_rules.all? do |rule| op, ver = rule.split(' ') schema_version.send(op.to_sym, normalize_version(ver)) end end |
#legacy? ⇒ Boolean
27 28 29 |
# File 'lib/thinreports/basic_report/layout/version.rb', line 27 def legacy? @schema_version < normalize_version(NEW_SCHEMA_FROM) end |