Sha256: ad9052a9a4c5938b0b4e827907c2cc1cfb44d181369f5cd0cbfe0ee54b546d31
Contents?: true
Size: 1.29 KB
Versions: 2
Compression:
Stored size: 1.29 KB
Contents
module Inch module CodeObject # Provider modules "provide" a Codebase object with code objects. # They are the intermediary between the raw representation that tools # like YARD deliver and the "interface" that Inch expects. # # YARD Example: # # YARD's SourceParser returns ::YARD::CodeObject objects, which are # cast to Provider::YARD::Object::Base objects that can ensure naming # conventions et al. follow certain rules. These objects are then again # converted into CodeObject::Proxy objects that form the codebase: # # ::YARD::CodeObject # ↓ # ::Inch::CodeObject::Provider::YARD::Object::Base # ↓ # (Hash) # ↓ # ::Inch::CodeObject::Proxy # # module Provider # Parses a codebase to provide objects # # @param dir [String] the directory to parse # @param config [Inch::Config::Codebase] # @return [#objects] def self.parse(dir, config = Inch::Config.codebase) Config.namespace(config.language, :Provider) .const_get(config.object_provider) .parse(dir, config) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
inch-0.5.0.rc5 | lib/inch/code_object/provider.rb |
inch-0.5.0.rc4 | lib/inch/code_object/provider.rb |