Class: Magick::FeatureDependency
- Inherits:
-
Object
- Object
- Magick::FeatureDependency
- Defined in:
- lib/magick/feature_dependency.rb
Class Method Summary collapse
- .add_dependency(feature_name, dependency_name) ⇒ Object
- .check(feature_name, context = {}) ⇒ Object
- .remove_dependency(feature_name, dependency_name) ⇒ Object
Class Method Details
.add_dependency(feature_name, dependency_name) ⇒ Object
14 15 16 17 18 19 |
# File 'lib/magick/feature_dependency.rb', line 14 def self.add_dependency(feature_name, dependency_name) feature = Magick.features[feature_name.to_s] || Magick[feature_name] dependencies = feature.instance_variable_get(:@dependencies) || [] dependencies << dependency_name.to_s unless dependencies.include?(dependency_name.to_s) feature.instance_variable_set(:@dependencies, dependencies) end |
.check(feature_name, context = {}) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/magick/feature_dependency.rb', line 5 def self.check(feature_name, context = {}) feature = Magick.features[feature_name.to_s] || Magick[feature_name] dependencies = feature.instance_variable_get(:@dependencies) || [] dependencies.all? do |dep_name| Magick.enabled?(dep_name, context) end end |
.remove_dependency(feature_name, dependency_name) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/magick/feature_dependency.rb', line 21 def self.remove_dependency(feature_name, dependency_name) feature = Magick.features[feature_name.to_s] || Magick[feature_name] dependencies = feature.instance_variable_get(:@dependencies) || [] dependencies.delete(dependency_name.to_s) feature.instance_variable_set(:@dependencies, dependencies) end |