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

Inherits:
LibraryCommand show all
Includes:
DocServerHelper, Templates::Helpers::BaseHelper, Templates::Helpers::ModuleHelper
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

Basic Command and Adapter Options collapse

Attributes Set Per Request collapse

Instance Attribute Summary collapse

Attributes included from Templates::Helpers::BaseHelper

#object, #owner, #serializer

Instance Method Summary collapse

Methods included from DocServerHelper

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

Methods included from Templates::Helpers::ModuleHelper

#prune_method_listing

Methods included from Templates::Helpers::BaseHelper

#format_object_title, #format_object_type, #format_source, #format_types, #globals, #h, #link_file, #link_include_file, #link_include_object, #link_object, #link_url, #linkify, #run_verifier

Constructor Details

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

Instance Attribute Details

#adapter ⇒ Adapter Originally defined in class Base

Returns the server adapter

Returns:

Since:

  • 0.6.0

#body ⇒ String Originally defined in class Base

Returns the response body. Defaults to empty string.

Returns:

  • (String) —

    the response body. Defaults to empty string.

Since:

  • 0.6.0

#caching ⇒ Boolean Originally defined in class Base

Returns whether to cache

Returns:

  • (Boolean) —

    whether to cache

Since:

  • 0.6.0

#command_options ⇒ Hash Originally defined in class Base

Returns the options passed to the command's constructor

Returns:

  • (Hash) —

    the options passed to the command's constructor

Since:

  • 0.6.0

#headers ⇒ Hash{String => String} Originally defined in class Base

Returns response headers

Returns:

Since:

  • 0.6.0

#incremental ⇒ Boolean Originally defined in class LibraryCommand

Returns whether to reparse data

Returns:

  • (Boolean) —

    whether to reparse data

Since:

  • 0.6.0

#library ⇒ LibraryVersion Originally defined in class LibraryCommand

Returns the object containing library information

Returns:

Since:

  • 0.6.0

#options ⇒ LibraryOptions Originally defined in class LibraryCommand

Returns default options for the library

Returns:

Since:

  • 0.6.0

#path ⇒ String Originally defined in class Base

Returns the path after the command base URI

Returns:

  • (String) —

    the path after the command base URI

Since:

  • 0.6.0

#query ⇒ Object

Since:

  • 0.6.0



11
12
13
# File 'lib/yard/server/commands/search_command.rb', line 11

def query
  @query
end

#request ⇒ Request Originally defined in class Base

Returns request object

Returns:

  • (Request) —

    request object

Since:

  • 0.6.0

#results ⇒ Object

Since:

  • 0.6.0



11
12
13
# File 'lib/yard/server/commands/search_command.rb', line 11

def results
  @results
end

#serializer ⇒ Serializers::Base Originally defined in class LibraryCommand

Returns the serializer used to perform file linking

Returns:

Since:

  • 0.6.0

#single_library ⇒ Boolean Originally defined in class LibraryCommand

Returns whether router should route for multiple libraries

Returns:

  • (Boolean) —

    whether router should route for multiple libraries

Since:

  • 0.6.0

#status ⇒ Numeric Originally defined in class Base

Returns status code. Defaults to 200 per request

Returns:

  • (Numeric) —

    status code. Defaults to 200 per request

Since:

  • 0.6.0

Instance Method Details

#run ⇒ Object

Since:

  • 0.6.0



13
14
15
16
17
18
19
20
21
22
# File 'lib/yard/server/commands/search_command.rb', line 13

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(url_for(found))
  end
  search_for_object
  request.xhr? ? serve_xhr : serve_normal
end

#visible_results ⇒ Object

Since:

  • 0.6.0



24
25
26
# File 'lib/yard/server/commands/search_command.rb', line 24

def visible_results
  results[0, 10]
end