module ArchSpec::Rules::ProtocolEvidence
Builds the shared βmethods: β¦β evidence string for the protocol rules and resolves the classes in a component. Internal helper.
Public Instance Methods
# File lib/archspec/rules/protocol_rules.rb, line 153 def constants_for(graph, source) component = graph.components[source] return [] unless component component.constants.flat_map { |name| graph.constants_named(name) }.select(&:class?).uniq(&:name) end
# File lib/archspec/rules/protocol_rules.rb, line 160 def for(constant, methods, unresolved) evidence = "#{constant.name} methods: #{methods.empty? ? '(none)' : methods.to_a.sort.join(', ')}" return evidence if unresolved.empty? "#{evidence}; unresolved ancestors: #{unresolved.to_a.sort.join(', ')}" end