Class: YARD::Server::Commands::SearchCommand

Inherits:
LibraryCommand show all
Defined in:
lib/yard/server/commands/search_command.rb

Overview

Performs a search over the objects inside of a library and returns the results as HTML or plaintext

Since:

  • 0.6.0

Instance Attribute Summary collapse

Attributes inherited from LibraryCommand

#incremental, #library, #options, #serializer, #single_library

Attributes inherited from Base

#adapter, #body, #caching, #command_options, #headers, #path, #request, #status

Instance Method Summary collapse

Methods inherited from LibraryCommand

#call, #initialize

Methods inherited from Base

#cache, #call, #initialize, #not_found, #redirect, #render

Constructor Details

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

Instance Attribute Details

#queryObject

Since:

  • 0.6.0



7
8
9
# File 'lib/yard/server/commands/search_command.rb', line 7

def query
  @query
end

#resultsObject

Since:

  • 0.6.0



7
8
9
# File 'lib/yard/server/commands/search_command.rb', line 7

def results
  @results
end

Instance Method Details

#runObject

Since:

  • 0.6.0



9
10
11
12
13
14
15
16
17
18
# File 'lib/yard/server/commands/search_command.rb', line 9

def run
  Registry.load_all
  self.query = request.query['q']
  redirect("/#{adapter.router.docs_prefix}/#{single_library ? library : ''}") if query.nil? || query =~ /\A\s*\Z/
  if found = Registry.at(query)
    redirect(serializer.serialized_path(found))
  end
  search_for_object
  request.xhr? ? serve_xhr : serve_normal
end

#visible_resultsObject

Since:

  • 0.6.0



20
21
22
# File 'lib/yard/server/commands/search_command.rb', line 20

def visible_results
  results[0, 10]
end