function.tmpl 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  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>${node.symbol}</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-python">
  23. % if formatter.get_in_parameters(node):
  24. @accepts(${', '.join((formatter.format_type(arg.type) for arg in formatter.get_in_parameters(node)))})
  25. % endif
  26. @returns(${formatter.format_type(node.retval.type) | x})
  27. def ${node.name}(${', '.join((formatter.format_parameter_name(node, arg) for arg in formatter.get_in_parameters(node)))}):
  28. # Python wrapper for ${node.symbol}()
  29. </code></synopsis></%block>
  30. <%block name="details">
  31. % if formatter.get_in_parameters(node) or node.retval:
  32. <terms>
  33. % for ix, arg in enumerate(formatter.get_in_parameters(node)):
  34. <item>
  35. <title><code>${formatter.format_parameter_name(node, arg)}</code></title>
  36. ${formatter.format(node, arg.doc)}
  37. </item>
  38. % endfor
  39. % if node.retval and node.retval.type.ctype != 'void':
  40. <item>
  41. <title><code>Returns</code></title>
  42. {formatter.format(node, node.retval.doc)}
  43. </item>
  44. % endif
  45. </terms>
  46. % endif
  47. </%block>