lib/inch/evaluation/role/namespace.rb in inch-0.1.4 vs lib/inch/evaluation/role/namespace.rb in inch-0.2.0

- old
+ new

@@ -1,9 +1,11 @@ module Inch module Evaluation module Role + # Roles assigned to namespaces (classes and modules) module Namespace + # Role assigned to namespaces with children class WithChildren < Base # This role doesnot assign a score. def score 0 end @@ -11,44 +13,54 @@ # This role sets a max_score. def max_score # @value.to_f end end + + # Role assigned to namespaces with many children + # + # @see CodeObject::Proxy::NamespaceObject#has_many_children? class WithManyChildren < Base # +priority def priority +1 end end + + # Role assigned to namespaces with many attributes + # + # @see CodeObject::Proxy::NamespaceObject#has_many_attributes? class WithManyAttributes < Base # +priority def priority +1 end end + # Role assigned to namespaces without any children class WithoutChildren < Base end + + # Role assigned to namespaces without any methods class WithoutMethods < Base - # --priority def priority -2 end end + # A 'pure' namespace has only namespaces as children class Pure < Base - # --priority def priority -2 end end + # A 'core' namespace is a class or module that is part of the Ruby # core. It might appear in the object tree when monkey-patching # functionality. - # But just because we patch Hash does not mean we need to document - # the Hash class itself. + # (the reasoning here is: just because we patch Hash does not mean + # we need to document the Hash class itself) class Core < Base - # --priority def priority -7 end end end