Class: PDoc::Generators::Pythonesque
Defined Under Namespace
Classes: Description
Instance Attribute Summary
#options, #root
Instance Method Summary
collapse
#initialize, #mkdir
Instance Method Details
#render(output) ⇒ Object
4
5
6
7
8
|
# File 'lib/pdoc/generators/pythonesque.rb', line 4
def render(output)
open(output, "w+") do |file|
file << render_to_str
end
end
|
#render_to_str ⇒ Object
10
11
12
13
14
15
16
|
# File 'lib/pdoc/generators/pythonesque.rb', line 10
def render_to_str
selected_objects.map do |k, obj|
js_name = to_js_name(obj)
desc = Description.new(obj).to_escaped_str
" #{js_name}.__doc__ = '#{desc}';"
end.join("\n")
end
|
#selected_objects ⇒ Object
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/pdoc/generators/pythonesque.rb', line 26
def selected_objects
root.registry.select do |k, v|
(v.is_a?(Models::InstanceMethod) ||
v.is_a?(Models::ClassMethod) ||
v.is_a?(Models::Mixin) ||
v.is_a?(Models::Class) ||
v.is_a?(Models::Namespace) ||
v.is_a?(Models::Utility)) && !v.alias?
end
end
|
#to_js_name(obj) ⇒ Object
18
19
20
21
22
23
24
|
# File 'lib/pdoc/generators/pythonesque.rb', line 18
def to_js_name(obj)
if obj.is_a?(Models::InstanceMethod)
obj.full_name.sub('#', '.prototype.')
else
obj.full_name
end
end
|