public
Description: YARD is a Ruby Documentation tool (Yay!)
Home | Edit | New

File Tree Overview

The top-level directory of the YARD file tree looks as follows:

FAQ.markdown                  FAQ, in Markdown format
LICENSE                       YARD license (ala MIT)
README.markdown               README, in Markdown format
Rakefile                      install and spec rake tasks
benchmarks/*.rb               benchmarks
bin/*                         commands
lib/**/*.rb                   library
pkg/yard-0.2.3.{gem,tgz,zip}  packages (generated by rake)
spec/**/*.{rb,rb.txt}         tests
templates/**/*.erb            eRuby templates for HTML and text
yard.gemspec                  RubyGems specification

The bin directory contains commands:

bin/
| view_generator              debugging program that shows what the generators are
                                doing; should be merged into yardoc or something
| yard-graph                  generates a UML-like class diagram, using GraphViz
                                (requires `dot`)
| yardoc                      main YARD command
| yri                         ri clone, powered by YARD

The lib directory contains library code:

lib/
| yard/
| | autoload.rb               autoload declarations
| | cli/*.rb                  command-line interpreter (eg, options)
| | code_objects/*.rb         domain model repr. of Ruby language components (class,
                                module, method, ...)
| | core_ext/*.rb             helpful extensions to Ruby core classes
| | docstring.rb              represents the documentation string and meta tags for
                                a code object
| | generators/**/*.rb        handlers for the generation layer (output to HTML,
                                text, etc.)
| | handlers/**/*.rb          handlers to parse Ruby statements into code objects.
                                Developers looking to handle custom DSL-like Ruby
                                constructs should implement one of these.
| | logging.rb                general logging class
| | parser/*.rb               parses Ruby code into a set of statement objects
| | rake/*.rb                 various rake task helpers
| | registry.rb               main registry class; keeps track of all code objects
                                associated with the parsed Ruby
| | serializers/*.rb          serialization layer; called after generation to save
                                output to an arbitrary endpoint (filesystem, FTP, SQL)
| | tags/*.rb                 implements parsing and handling of meta-data in
                                documentation strings

The spec directory contains test code:

spec/
| code_objects/**/*.rb        test .../lib/yard/code_objects/...
| core_ext/*.rb               test .../lib/yard/core_ext/...
| docstring_spec.rb           test .../lib/yard/docstring.rb
| generators/**/*.rb          test .../lib/yard/generators/...
| handlers/**/*.{rb,rb.txt}   test .../lib/yard/handlers/...
| parser/**/*.{rb,rb.txt}     test .../lib/yard/parser/...
| registry_spec.rb            test .../lib/yard/registry.rb
| serializers/*.rb            test .../lib/yard/serializers/...
| spec_helper.rb              general-purpose spec helper code
| tags/*_spec.rb              test .../lib/yard/tags/...

The templates directory contains default and JavaDoc-style
eRuby templates for HTML and text files:

| {default,javadoc}/          default and JavaDoc markup
| | */                        topics (eg, class, uml)
| | | {html,text}/            HTML and text sub-trees
| | | | *.erb                 eRuby template files
Last edited by RichMorin, Mon Mar 16 09:49:34 -0700 2009
Home | Edit | New
Versions: