Class: YARD::Server::DocServerSerializer

Inherits:
YARD::Serializers::FileSystemSerializer show all
Includes:
WEBrick::HTTPUtils
Defined in:
lib/yard/server/doc_server_serializer.rb

Overview

A custom serializer which returns resource URLs instead of static relative paths to files on disk.

Since:

  • 0.6.0

Instance Method Summary collapse

Constructor Details

#initialize(command = nil) ⇒ DocServerSerializer

Returns a new instance of DocServerSerializer.

Since:

  • 0.6.0



10
11
12
# File 'lib/yard/server/doc_server_serializer.rb', line 10

def initialize(command = nil)
  super(:basepath => '', :extension => '')
end

Instance Method Details

#serialized_path(object) ⇒ Object

Since:

  • 0.6.0



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/yard/server/doc_server_serializer.rb', line 14

def serialized_path(object)
  case object
  when CodeObjects::RootObject
    "toplevel"
  when CodeObjects::ExtendedMethodObject
    serialized_path(object.namespace) + ':' + escape(object.name.to_s)
  when CodeObjects::MethodObject
    serialized_path(object.namespace) +
      (object.scope == :instance ? ":" : ".") + escape(object.name.to_s)
  when CodeObjects::ConstantObject, CodeObjects::ClassVariableObject
    serialized_path(object.namespace) + "##{object.name}-#{object.type}"
  when CodeObjects::ExtraFileObject
    super(object).gsub(/^file./, 'file/')
  else
    super(object)
  end
end