Class: ModelValidation
- Inherits:
-
Object
- Object
- ModelValidation
- Defined in:
- lib/life_game_viewer/model/model_validation.rb
Instance Method Summary collapse
- #class_methods_missing(instance) ⇒ Object
- #instance_methods_missing(instance) ⇒ Object
- #methods_missing(instance) ⇒ Object
- #methods_missing_message(instance) ⇒ Object
- #required_class_methods ⇒ Object
- #required_instance_methods ⇒ Object
Instance Method Details
#class_methods_missing(instance) ⇒ Object
21 22 23 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 21 def class_methods_missing(instance) required_class_methods - instance.class.methods end |
#instance_methods_missing(instance) ⇒ Object
25 26 27 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 25 def instance_methods_missing(instance) required_instance_methods - instance.methods end |
#methods_missing(instance) ⇒ Object
29 30 31 32 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 29 def methods_missing(instance) missing_class_method_display_names = class_methods_missing(instance).map { |m| "self.#{m}" } missing_class_method_display_names + instance_methods_missing(instance) end |
#methods_missing_message(instance) ⇒ Object
34 35 36 37 38 39 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 34 def (instance) missing_methods = methods_missing(instance) missing_methods.empty? \ ? nil \ : "Model is missing the following required methods: #{missing_methods.join(", ")}." end |
#required_class_methods ⇒ Object
3 4 5 6 7 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 3 def required_class_methods [ :create_from_string ] end |
#required_instance_methods ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/life_game_viewer/model/model_validation.rb', line 9 def required_instance_methods [ :row_count, :column_count, :alive?, :set_living_state, :set_living_states, :next_generation_model, :number_living ] end |