Class: Inch::Evaluation::NamespaceObject
- Defined in:
- lib/inch/evaluation/namespace_object.rb
Overview
a namespace object can have methods and other namespace objects inside itself (e.g. classes and modules)
Direct Known Subclasses
Constant Summary collapse
- DOC_SCORE =
MAX_SCORE
- EXAMPLE_SCORE =
10
- MULTIPLE_EXAMPLES_SCORE =
20
- RUBY_CORE =
%w(Array Bignum BasicObject Object Module Class Complex NilClass Numeric String Float Fiber FiberError Continuation Dir File Encoding Enumerator StopIteration Enumerator::Generator Enumerator::Yielder Exception SystemExit SignalException Interrupt StandardError TypeError ArgumentError IndexError KeyError RangeError ScriptError SyntaxError LoadError NotImplementedError NameError NoMethodError RuntimeError SecurityError NoMemoryError EncodingError SystemCallError Encoding::CompatibilityError File::Stat IO Hash ENV IOError EOFError ARGF RubyVM RubyVM::InstructionSequence Math::DomainError ZeroDivisionError FloatDomainError Integer Fixnum Data TrueClass FalseClass Mutex Thread Proc LocalJumpError SystemStackError Method UnboundMethod Binding Process::Status Random Range Rational RegexpError Regexp MatchData Symbol Struct ThreadGroup ThreadError Time Encoding::UndefinedConversionError Encoding::InvalidByteSequenceError Encoding::ConverterNotFoundError Encoding::Converter RubyVM::Env) + %w(Comparable Kernel File::Constants Enumerable Errno FileTest GC ObjectSpace GC::Profiler IO::WaitReadable IO::WaitWritable Marshal Math Process Process::UID Process::GID Process::Sys Signal)
Constants inherited from Base
Base::MAX_SCORE, Base::MIN_SCORE, Base::TAGGED_SCORE
Instance Attribute Summary
Attributes inherited from Base
#max_score, #min_score, #object
Instance Method Summary collapse
Methods inherited from Base
#initialize, #priority, #roles, #score
Constructor Details
This class inherits a constructor from Inch::Evaluation::Base
Instance Method Details
#evaluate ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/inch/evaluation/namespace_object.rb', line 13 def evaluate eval_doc eval_children eval_code_example if object.has_many_attributes? add_role Role::Namespace::WithManyAttributes.new(object) end if object.nodoc? add_role Role::Object::TaggedAsNodoc.new(object) end if object. count = object..size add_role Role::Object::Tagged.new(object, TAGGED_SCORE * count) end if object.in_root? add_role Role::Object::InRoot.new(object) end if object.public? # this is always true for classes and modules add_role Role::Object::Public.new(object) end eval_core end |