1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
|
<?xml version="1.0"?>
<?python
import pprint
import pudge.generator
def _render_object(t, obj):
return getattr(t, 'render_' + obj.type_name)(obj)
def sigil_for_type(type):
prefixes = { 'routine': 'f',
'module': 'm',
'class': 'C',
'attribute': 'a' }
return prefixes[type]
pp = pprint.PrettyPrinter(depth=3)
top_level_module = seperator_needed = None
?>
<templates xmlns:py="http://purl.org/kid/ns#"
py:extends="pudge.generator.Page">
<span py:def="blurb(item)" py:strip="1"
py:if="len(item.blurb())">
- <span class="rst">${XML(item.blurb(html=1))}</span>
</span>
<div py:def="member_doc(member)" py:strip="1" py:if="not member.isdata()">
<p py:if="member.blurb()" class="pudge-member-blurb">
${XML(member.blurb(html=1))}
</p>
<p py:if="member.doc(blurbless=1)"
py:replace="XML(member.doc(html=1, blurbless=1))"/>
</div>
<!-- render attributes -->
<div py:def="render_attribute(member)" class="pudge-member name">
<a name="${member.name}" />
<h4 class="pudge-member-name">${member_sigil(member.type_name)}
<tt><a href="${link_to(member)}" class="pudge-obj-link">${member.name}</a></tt></h4>
<div class="pudge-section rst">
<p py:if="member.doc()" py:replace="XML(member.doc(html=1))"></p>
<pre py:if="not member.doc()">${pp.pformat(member.obj)}</pre>
</div>
</div>
<!-- render routines -->
<div py:def="render_routine(member)"
class="pudge-member routine ${member.isalias() and 'alias' or None}">
<a name="${member.name}" />
<h4 class="pudge-member-name">${member_sigil(member.type_name)}
<tt><a href="${link_to(member)}" class="pudge-obj-link">${member.name}</a>${member.formatargs()}</tt>
<a href="${link_to_source(member)}" title="View Source">...</a>
</h4>
<div class="pudge-section rst">
${member_doc(member)}
</div>
</div>
<!-- render class members -->
<div py:def="render_class(member)"
class="pudge-member class ${member.isalias() and 'alias' or None}">
<h4 class="pudge-member-name">${member_sigil(member.type_name)}
<tt>
<a href="${link_to(member)}" class="pudge-obj-link"
>${member.name}</a>${member.formatargs()}</tt>
<a href="${link_to_source(member)}" title="View Source"
class="pudge-member-view-source">...</a>
</h4>
<div class="pudge-section rst">
${member_doc(member)}
<?python
members = list(member.all())
member_count = len(members)
?>
<p class="note" py:if="member_count">
This class contains <a href="${link_to(member)}#members">
${member_count} member${member_count > 1 and 's' or ''}</a>.
</p>
</div>
</div>
<div py:def="render_object(member)"
py:replace="_render_object(self, member)" />
<!-- view source link -->
<dl py:def="module_index_table(modules, qualified_names=0, split_packages=False)"
py:if="not isinstance(modules, list) or len(modules)"
class="pudge-module-list">
<?python
global top_level_module
top_level_module = None
?>
<div py:for="module in modules" py:strip="">
<?python
global top_level_module, seperator_needed
orig = top_level_module
myname = qualified_names and module.qualified_name() or module.name
if top_level_module is None:
top_level_module = myname.split('.')[0]
seperator_needed = False
elif myname.split('.')[0] != top_level_module:
seperator_needed = True
top_level_module = myname.split('.')[0]
else:
seperator_needed = False
?>
<div py:if="seperator_needed and split_packages" py:strip="True"><hr size="1" noshade="noshade" /></div>
<h2 py:if="(orig is None or seperator_needed) and split_packages" py:content="myname.split('.')[0].title()" />
<dt><tt><a href="${link_to(module)}" class="pudge-obj-link">
${myname}
</a></tt>
</dt>
<dd py:if="module.blurb()">
${XML(module.blurb(html=1))}
</dd>
</div>
</dl>
<span class="prefix"
py:def="member_sigil(type)">${sigil_for_type(type)}</span>
</templates>
|