Template:FunctionDeclaration: Difference between revisions
No edit summary |
Use question marks (?, a la TypeScript) instead of brackets for optional parameters. Brackets have a different meaning in ASH (maps), so using them for optional parameters was confusing. |
||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
| <kbd><b>{{type|{{data|{{{name}}}|function{{{func}}}.return_type}}}} [[{{data|{{{name}}}|name}}]]({{ | | <kbd><b>{{type|{{data|{{{name}}}|function{{{func}}}.return_type}}}} [[{{data|{{{name}}}|name}}]]({{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | ||
| | | {{param2|name={{{name}}}|func={{{func}}}|param=1|format={{{format}}}}} | ||
}}{{ | }}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param2.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param2.type}} | ||
|, | |, {{param2|name={{{name}}}|func={{{func}}}|param=2|format={{{format}}}}} | ||
}}{{ | }}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param3.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param3.type}} | ||
|, | |, {{param2|name={{{name}}}|func={{{func}}}|param=3|format={{{format}}}}} | ||
}}{{ | }}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param4.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param4.type}} | ||
|, | |, {{param2|name={{{name}}}|func={{{func}}}|param=4|format={{{format}}}}} | ||
}}{{ | }}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param5.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param5.type}} | ||
|, | |, {{param2|name={{{name}}}|func={{{func}}}|param=5|format={{{format}}}}} | ||
}}{{ | }}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | ||
| }})</b></kbd>{{ | | }})</b></kbd>{{ | ||
#if: {{{desc|}}} | #if: {{{desc|}}} | ||
| | | :{{data|{{{name}}}|function{{{func}}}.description}}}}{{ | ||
#if: {{{param_desc|}}} | #if: {{{param_desc|}}} | ||
|{{ | |{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param1.type}} | ||
| * {{pspan|{{data|{{{name}}}|function{{{func}}}.param1}}}}: {{data|{{{name}}}|function{{{func}}}.param1.description}}}}{{ | | :* {{pspan|{{data|{{{name}}}|function{{{func}}}.param1}}}}: {{data|{{{name}}}|function{{{func}}}.param1.description}}}}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param2.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param2.type}} | ||
| * {{pspan|{{data|{{{name}}}|function{{{func}}}.param2}}}}: {{data|{{{name}}}|function{{{func}}}.param2.description}}}}{{ | | :* {{pspan|{{data|{{{name}}}|function{{{func}}}.param2}}}}: {{data|{{{name}}}|function{{{func}}}.param2.description}}}}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param3.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param3.type}} | ||
| * {{pspan|{{data|{{{name}}}|function{{{func}}}.param3}}}}: {{data|{{{name}}}|function{{{func}}}.param3.description}}}}{{ | | :* {{pspan|{{data|{{{name}}}|function{{{func}}}.param3}}}}: {{data|{{{name}}}|function{{{func}}}.param3.description}}}}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param4.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param4.type}} | ||
| * {{pspan|{{data|{{{name}}}|function{{{func}}}.param4}}}}: {{data|{{{name}}}|function{{{func}}}.param4.description}}}}{{ | | :* {{pspan|{{data|{{{name}}}|function{{{func}}}.param4}}}}: {{data|{{{name}}}|function{{{func}}}.param4.description}}}}{{ | ||
#if: {{data|{{{name}}}|function{{{func}}}.param5.type}} | #if: {{data|{{{name}}}|function{{{func}}}.param5.type}} | ||
| * {{pspan|{{data|{{{name}}}|function{{{func}}}.param5}}}}: {{data|{{{name}}}|function{{{func}}}.param5.description}}}} | | :* {{pspan|{{data|{{{name}}}|function{{{func}}}.param5}}}}: {{data|{{{name}}}|function{{{func}}}.param5.description}}}} | ||
}} | }} | ||
| {{error|Invalid function number (func = "{{{func|}}}") in Template:FunctionDeclaration}}}}</includeonly><noinclude> | | {{error|Invalid function number (func = "{{{func|}}}") in Template:FunctionDeclaration}}}}</includeonly><noinclude> |
Latest revision as of 14:22, 31 December 2020
Displays an ASH function's declaration. This is meant to be transcluded by other templates, rather than regular pages.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Function page name | name | Name of a function page. '''This must be a data page.''' | Page name | required |
Overloaded function number | func | A function page may describe multiple overloaded functions under the same name. This parameter allows you to select one. Allowed values are 1-5, inclusive. | Number | required |
Rendering format | format | "" (empty string) = show everything, "signature" = only show parameter types (i.e. function signature). Default value is empty string (show everything). | Line | optional |
Show descriptions? | desc | If set to "yes", also show the description of each function and its parameters below the declaration. Technically, any non-empty string works, but please use "yes" for ease of maintenance. | Line | optional |
Show parameter descriptions? | param_desc | If set to "yes", also show the description of each function's parameters below the declaration. Technically, any non-empty string works, but please use "yes" for ease of maintenance. | Line | optional |
Examples
Wiki markup | Result |
---|---|
Normal format | |
{{FunctionDeclaration|name=visit_url|func=1}} |
buffer visit_url() |
{{FunctionDeclaration|name=visit_url|func=2}} |
buffer visit_url( string url, boolean? use_POST = true, boolean? encoded = false ) |
Normal format with description | |
{{FunctionDeclaration|name=visit_url|func=1|desc=yes}} |
buffer visit_url()
|
{{FunctionDeclaration|name=visit_url|func=2|desc=yes}} |
buffer visit_url( string url, boolean? use_POST = true, boolean? encoded = false )
|
Normal format with description + parameter description | |
{{FunctionDeclaration|name=visit_url|func=1|desc=yes|param_desc=yes}} |
buffer visit_url()
|
{{FunctionDeclaration|name=visit_url|func=2|desc=yes|param_desc=yes}} |
buffer visit_url( string url, boolean? use_POST = true, boolean? encoded = false )
|
Signature format | |
{{FunctionDeclaration|name=visit_url|func=2|format=signature}} |
buffer visit_url( string, boolean?, boolean? ) |
Invalid or missing function number | |
{{FunctionDeclaration|name=visit_url|func=4}} |
Invalid function number (func = "4") in Template:FunctionDeclaration |
{{FunctionDeclaration|name=visit_url|func=0}} |
Invalid function number (func = "0") in Template:FunctionDeclaration |
{{FunctionDeclaration|name=visit_url}} |
Invalid function number (func = "") in Template:FunctionDeclaration |