Template:FunctionDeclaration: Difference between revisions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
<includeonly><kbd><b>{{{return_type}}} {{{name}}}({{ | <includeonly><kbd><b>{{User:Philmasterplus/Type|{{{return_type}}}}} [[{{{name}}}]]({{ | ||
#if: {{{param1.type|}}} | #if: {{{param1.type|}}} | ||
|{{#if: {{{param1.optional|}}}| <nowiki>[</nowiki>}} {{User:Philmasterplus/Param|{{{param1.type}}}|{{{param1|}}}}}{{ | |{{#if: {{{param1.optional|}}}| <nowiki>[</nowiki>}} {{User:Philmasterplus/Param|{{{param1.type}}}|{{{param1|}}}}}{{ | ||
Revision as of 20:30, 18 December 2020
Displays an ASH function's declaration. This is meant to be transcluded by other templates, rather than function pages.
| Parameter | Description | Type | Status | |
|---|---|---|---|---|
| Function name | name | Name of the function | Line | optional |
| Function return type | return_type | Return type of the function
| Line | optional |
| Parameter 1 name | param1 | Name of parameter 1 (and so on for parameters 2 through 5). If omitted, only the parameter type will be shown. | Line | optional |
| Parameter 1 type | param1.type | Parameter 1 data type
| Line | optional |
| Parameter 1 is optional? | param1.optional | "yes" = optional. Any non-empty string will do, but please use "yes" to make standardization easier.
| String | optional |
| Parameter 1 default value | param1.default | If this is specified, param1.optional must be "yes" | Line | optional |
Examples
No arguments
{{User:Philmasterplus/FunctionDeclaration
|name=my_id
|return_type=int
}}
Single argument
{{User:Philmasterplus/FunctionDeclaration
|name=to_item
|return_type=int
|param1=it
|param1.type=item
}}
int to_item( Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist )
Multiple arguments
{{User:Philmasterplus/FunctionDeclaration
|name=maximize
|return_type=record [int]
|param1=expression
|param1.type=string
|param2=max_price
|param2.type=int
|param3=price_level
|param3.type=int
|param4=simulate
|param4.type=boolean
|param5=include_equip
|param5.type=boolean
}}
record [int] maximize( Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist )
Optional arguments
{{User:Philmasterplus/FunctionDeclaration
|name=creatable_turns
|return_type=int
|param1=check_me
|param1.type=item
|param2=qty
|param2.type=int
|param2.optional=yes
|param3=free
|param3.type=boolean
|param3.optional=yes
}}
int creatable_turns( Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist [, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist ] [, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist ] )
Default arguments
{{User:Philmasterplus/FunctionDeclaration
|name=visit_url
|return_type=buffer
|param1=url
|param1.type=string
|param2=use_POST
|param2.type=boolean
|param2.optional=yes
|param2.default=true
|param3=encoded
|param3.type=boolean
|param3.optional=yes
|param3.default=false
}}
buffer visit_url( [ Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist ] [, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist = true ] [, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist = false ] [, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist = true ] )
No parameter names (signature only)
{{User:Philmasterplus/FunctionDeclaration
|name=maximize
|return_type=record [int]
|param1.type=string
|param2.type=int
|param3.type=int
|param4.type=boolean
|param5.type=boolean
}}
record [int] maximize( Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist, Page '{{{name}}}' does not exist? Page '{{{name}}}' does not exist = Page '{{{name}}}' does not exist )