class ProtoCat::Protocol
Constants
- Enforcer
Public Class Methods
new(mod, criteria)
click to toggle source
# File lib/proto_cat/protocol.rb, line 6 def initialize(mod, criteria) @module = mod @criteria = criteria end
Public Instance Methods
failed_criteria(object)
click to toggle source
# File lib/proto_cat/protocol.rb, line 19 def failed_criteria(object) @criteria.reject {|crit| crit.satisfied_by?(object) } end
failure_strings(object)
click to toggle source
# File lib/proto_cat/protocol.rb, line 23 def failure_strings(object) failed_criteria(object).map(&:failure_string) end
must()
click to toggle source
# File lib/proto_cat/with_sugar.rb, line 15 def must Enforcer.new(self) end
satisfied_by!(object)
click to toggle source
# File lib/proto_cat/protocol.rb, line 11 def satisfied_by!(object) satisfied_by?(object) or raise NotImplementedError.new(self, object) end
satisfied_by?(object)
click to toggle source
# File lib/proto_cat/protocol.rb, line 15 def satisfied_by?(object) @criteria.all? {|crit| crit.satisfied_by?(object) } end
Also aliased as: ===
to_s()
click to toggle source
# File lib/proto_cat/protocol.rb, line 27 def to_s @module.to_s end