Class: YARD::Server::Commands::DisplayObjectCommand

Inherits:
LibraryCommand show all
Includes:
DocServerHelper
Defined in:
lib/yard/server/commands/display_object_command.rb

Overview

Displays documentation for a specific object identified by the path

Since:

  • 0.6.0

Direct Known Subclasses

FramesCommand

Instance Method Summary collapse

Methods included from DocServerHelper

#base_path, #router, #url_for, #url_for_file, #url_for_frameset, #url_for_index, #url_for_list, #url_for_main

Constructor Details

This class inherits a constructor from YARD::Server::Commands::LibraryCommand

Instance Method Details

#indexObject

Since:

  • 0.6.0



29
30
31
32
33
34
35
36
37
38
# File 'lib/yard/server/commands/display_object_command.rb', line 29

def index
  Registry.load_all

  options.update(
    :object => '_index.html',
    :objects => Registry.all(:module, :class),
    :type => :layout
  )
  render
end

#not_foundObject

Since:

  • 0.6.0



40
41
42
43
# File 'lib/yard/server/commands/display_object_command.rb', line 40

def not_found
  super
  self.body = "Could not find object: #{object_path}"
end

#runObject

Since:

  • 0.6.0



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/yard/server/commands/display_object_command.rb', line 8

def run
  if path.empty?
    if options.readme
      url = url_for_file(options.readme)
      self.status, self.headers, self.body = *router.send(:route, url)
      cache(body.first)
      return
    else
      self.path = 'index'
    end
  end
  return index if path == 'index'

  if object = Registry.at(object_path)
    options.update(:type => :layout)
    render(object)
  else
    self.status = 404
  end
end