summaryrefslogtreecommitdiff
path: root/giscanner/doctemplates/C/function.tmpl
blob: 8d66943866214a03c7a81d57b1271be3289a5a13 (plain)
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
<%inherit file="/base.tmpl"/>
<%block name="info">
    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
    <api:function>
      <api:returns>
        <api:type>${formatter.format_type(node.retval.type) | x}</api:type>
      </api:returns>
      <api:name>${formatter.format_function_name(node)}</api:name>
% for arg in formatter.get_parameters(node):
% if arg.type.ctype == '<varargs>':
      <api:varargs/>
% else:
      <api:arg>
        <api:type>${formatter.format_type(arg.type) | x}</api:type>
        <api:name>${formatter.format_parameter_name(node, arg)}</api:name>
      </api:arg>
% endif
% endfor
    </api:function>
</%block>
<%block name="synopsis">
<synopsis><code mime="text/x-csrc">
${node.retval.type.ctype} ${formatter.format_function_name(node)} (\
% if not formatter.get_parameters(node):
void\
% else:
% for ix, arg in enumerate(formatter.get_parameters(node)):
% if ix != 0:
${' ' * (len(formatter.format_type(node.retval.type)) + len(formatter.format_function_name(node)) + 3)}\
% endif
% if arg.type.ctype == '<varargs>':
...\
% else:
${formatter.format_type(arg.type) | x} ${arg.argname}\
% endif
% if ix != len(formatter.get_parameters(node)) - 1:
,
% endif
% endfor
% endif
);
</code></synopsis>
</%block>
<%block name="details">
% if formatter.get_parameters(node) or node.retval:
<terms>
% for arg in formatter.get_parameters(node):
<item>
<title><code>${arg.argname}</code></title>
${formatter.format(node, arg.doc)}
</item>
% endfor
% if node.retval:
<item>
<title><code>Returns</code></title>
${formatter.format(node, node.retval.doc)}
</item>
% endif
</terms>
% endif
</%block>