lib/yard/server/commands/display_object_command.rb in yard-0.9.16 vs lib/yard/server/commands/display_object_command.rb in yard-0.9.17
- old
+ new
@@ -1,65 +1,65 @@
-# frozen_string_literal: true
-module YARD
- module Server
- module Commands
- # Displays documentation for a specific object identified by the path
- class DisplayObjectCommand < LibraryCommand
- include DocServerHelper
-
- def run
- if path.empty?
- if options.readme
- filename = options.readme.filename
- opts = adapter.options.merge(
- :index => true, :library => library,
- :path => filename.sub(%r{^#{library.source_path.to_s}/}, '')
- )
- self.status, self.headers, self.body =
- *DisplayFileCommand.new(opts).call(request)
- cache(body)
- return
- else
- self.path = 'index'
- end
- end
- return index if path == 'index'
-
- object = Registry.at(object_path)
- if object
- options.update(:type => :layout)
- render(object)
- else
- not_found
- end
- end
-
- def index
- Registry.load_all
-
- options.update(
- :object => '_index.html',
- :objects => Registry.all(:module, :class),
- :type => :layout
- )
- render
- end
-
- def not_found
- super
- self.body = "Could not find object: #{object_path}"
- end
-
- private
-
- def object_path
- return @object_path if @object_path
- if path == "toplevel"
- @object_path = :root
- else
- @object_path = path.sub(':', '#').gsub('/', '::').sub(/^toplevel\b/, '').sub(/\.html$/, '')
- end
- end
- end
- end
- end
-end
+# frozen_string_literal: true
+module YARD
+ module Server
+ module Commands
+ # Displays documentation for a specific object identified by the path
+ class DisplayObjectCommand < LibraryCommand
+ include DocServerHelper
+
+ def run
+ if path.empty?
+ if options.readme
+ filename = options.readme.filename
+ opts = adapter.options.merge(
+ :index => true, :library => library,
+ :path => filename.sub(%r{^#{library.source_path.to_s}/}, '')
+ )
+ self.status, self.headers, self.body =
+ *DisplayFileCommand.new(opts).call(request)
+ cache(body)
+ return
+ else
+ self.path = 'index'
+ end
+ end
+ return index if path == 'index'
+
+ object = Registry.at(object_path)
+ if object
+ options.update(:type => :layout)
+ render(object)
+ else
+ not_found
+ end
+ end
+
+ def index
+ Registry.load_all
+
+ options.update(
+ :object => '_index.html',
+ :objects => Registry.all(:module, :class),
+ :type => :layout
+ )
+ render
+ end
+
+ def not_found
+ super
+ self.body = "Could not find object: #{object_path}"
+ end
+
+ private
+
+ def object_path
+ return @object_path if @object_path
+ if path == "toplevel"
+ @object_path = :root
+ else
+ @object_path = path.sub(':', '#').gsub('/', '::').sub(/^toplevel\b/, '').sub(/\.html$/, '')
+ end
+ end
+ end
+ end
+ end
+end