xref: /aosp_15_r20/external/bazelbuild-rules_testing/docgen/func_template.vm (revision d605057434dcabba796c020773aab68d9790ff9f)
1#set( $nl = "
2" )
3#set( $fn = $funcInfo.functionName)
4#set( $fnl = $fn.replaceAll("[.]", "_").toLowerCase())
5{.starlark-object}
6#[[##]]# $fn
7
8#set( $hasParams = false)
9{.starlark-signature}
10${funcInfo.functionName}(## Comment to consume newline
11#foreach ($param in $funcInfo.getParameterList())
12#if($param.name != "self")
13#set( $hasParams = true)
14[${param.name}](#${fnl}_${param.name})## Comment to consume newline
15#if(!$param.getDefaultValue().isEmpty())
16=$param.getDefaultValue()#end#if($foreach.hasNext),
17#end
18#end
19#end
20)
21
22${funcInfo.docString}
23
24#if ($hasParams)
25{#${fnl}_parameters}
26**PARAMETERS** [¶](#${fnl}_parameters){.headerlink}
27
28#foreach ($param in $funcInfo.getParameterList())
29#if($param.name != "self")
30#set($link = $fnl + "_" + $param.name)
31#if($foreach.first)
32{.params-box}
33#end
34## The .span wrapper is necessary so the trailing colon doesn't wrap
35:[${param.name}[¶](#$link){.headerlink}]{.span}: []{#$link}
36#if(!$param.getDefaultValue().isEmpty())(_default `${param.getDefaultValue()}`_) #end
37#if(!$param.docString.isEmpty())
38  $param.docString.replaceAll("$nl", "$nl  ")
39#else
40  _undocumented_
41#end
42#end
43#end
44#end
45#if (!$funcInfo.getReturn().docString.isEmpty())
46
47{#${fnl}_returns}
48RETURNS [¶](#${fnl}_returns){.headerlink}
49: ${funcInfo.getReturn().docString.replaceAll("$nl", "$nl  ")}
50#end
51#if (!$funcInfo.getDeprecated().docString.isEmpty())
52
53**DEPRECATED**
54
55${funcInfo.getDeprecated().docString}
56#end
57