function.tmpl 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <%inherit file="/base.tmpl"/>
  2. <%block name="info">
  3. ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
  4. <api:function>
  5. <api:returns>
  6. <api:type>${formatter.format_type(node.retval.type) | x}</api:type>
  7. </api:returns>
  8. <api:name>${formatter.format_function_name(node)}</api:name>
  9. % for arg in formatter.get_in_parameters(node):
  10. % if arg.type.ctype == '<varargs>':
  11. <api:varargs/>
  12. % else:
  13. <api:arg>
  14. <api:type>${formatter.format_type(arg.type) | x}</api:type>
  15. <api:name>${formatter.format_parameter_name(node, arg)}</api:name>
  16. </api:arg>
  17. % endif
  18. % endfor
  19. </api:function>
  20. </%block>
  21. <%block name="synopsis">
  22. <synopsis><code mime="text/x-csrc">
  23. ${node.retval.type.ctype} ${formatter.format_function_name(node)} (\
  24. % if not formatter.get_in_parameters(node):
  25. void\
  26. % else:
  27. % for ix, arg in enumerate(formatter.get_in_parameters(node)):
  28. % if ix != 0:
  29. ${' ' * (len(formatter.format_type(node.retval.type)) + len(formatter.format_function_name(node)) + 3)}\
  30. % endif
  31. % if arg.type.ctype == '<varargs>':
  32. ...\
  33. % else:
  34. ${formatter.format_type(arg.type) | x} ${arg.argname}\
  35. % endif
  36. % if ix != len(formatter.get_in_parameters(node)) - 1:
  37. ,
  38. % endif
  39. % endfor
  40. % endif
  41. );
  42. </code></synopsis></%block>
  43. <%block name="details">
  44. % if formatter.get_in_parameters(node) or node.retval:
  45. <terms>
  46. % for arg in formatter.get_in_parameters(node):
  47. <item>
  48. <title><code>${arg.argname}</code></title>
  49. ${formatter.format(node, arg.doc)}
  50. </item>
  51. % endfor
  52. % if node.retval:
  53. <item>
  54. <title><code>Returns</code></title>
  55. ${formatter.format(node, node.retval.doc)}
  56. </item>
  57. % endif
  58. </terms>
  59. % endif
  60. </%block>