Template:Function

From Kolmafia
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This is the template to display a line of function information (for the function page template, see Template:FunctionPage).

Using This Template

  • "name" should be set to the name of the function, without parentheses (for link-building & displaying with parameters; parentheses will automatically be added by the template in the appropriate place).
  • "aggregate" should be listed and set to anything you'd like if the function returns an aggregate (map) data type. If this function returns a simple data type, delete this line.
  • "return_type" should be set to the datatype returned by the function.
  • "return_also" should be set to a secondary datatype. For instance, some functions can return both a string and a buffer. For most functions, which only return a single datatype, this line should be deleted.
  • "parameter1" through "parameter5" should be set to the parameters the function accepts. Each should be set using Template:Param. Use these parameters in order: don't start with "parameter2" if you don't include a "parameter1". (They can be listed in any order, if you really desire; you just can't skip an earlier parameter if you want them to display correctly.)
    • The first argument is the data type of the parameter
    • The second argument is the short description to display for the parameter (optional).
    • If the parameter is an aggregate, you should include "ag=yes" in the template call.
    • For more information, see Template:Param.
  • "p1desc" through "p5desc" are for long descriptions of the parameter. They will be displayed in list form below the function call line if used.
    • Again, it's recommended that you list them in numerical order.
    • For consistency, if you refer to the short description of the parameter, wrap it in Template:Pspan.
    • If you want sub-listing for the parameter description, use additional lines in the assignment that start with "**" to create a nested list.
{{Function|
name=NAME_OF_FUNCTION|
aggregate=ANYTHING_IF_RETURNS_AGGREGATE_OR_DELETE|
return_type=DATATYPE_RETURNED_(IF_AGGREGATE_FULL_MAP_DEFINITION)|
return_also=SECONDARY_DATATYPE_RETURNED_OR_DELETE|
parameter1={{Param|DATATYPE|SHORT_DESC}}|
parameter2={{Param|DATATYPE|SHORT_DESC}}|
parameter3={{Param|DATATYPE|SHORT_DESC}}|
parameter4={{Param|DATATYPE|SHORT_DESC}}|
parameter5={{Param|DATATYPE|SHORT_DESC}}|
p1desc=LONG_DESCRIPTION_OF_PARAMETER|
p2desc=LONG_DESCRIPTION_OF_PARAMETER|
p3desc=LONG_DESCRIPTION_OF_PARAMETER|
p4desc=LONG_DESCRIPTION_OF_PARAMETER|
p5desc=LONG_DESCRIPTION_OF_PARAMETER}}

Display the call signature of an ASH function

Template parameters

ParameterDescriptionTypeStatus
Function namename

Function name without parentheses

Example
{{#var:name}}
Linerequired
Returns aggregate?aggregate

"yes" if the function returns an aggregate type. Otherwise, this parameter must be empty.

Example
{{#var:aggregate}}
Lineoptional
Return typereturn_type

Return type of the function

Example
{{#var:return_type}}
Linerequired
Secondary return typereturn_also

Secondary return type of the function. Used only for functions that can return multiple types (e.g. string or buffer).

Example
{{#var:return_also}}
Lineoptional
Parameter 1parameter1

Parameter 1. Use {{Param}} to describe a parameter

Example
{{Param|param_type|param_name}}
Stringoptional
Parameter 2parameter2

Parameter 2. Use {{Param}} to describe a parameter.

Example
{{Param|param_type|param_name}}
Stringoptional
Parameter 3parameter3

Parameter 3. Use {{Param}} to describe a parameter.

Example
{{Param|param_type|param_name}}
Stringoptional
Parameter 4parameter4

Parameter 4. Use {{Param}} to describe a parameter.

Example
{{Param|param_type|param_name}}
Stringoptional
Parameter 5parameter5

Parameter 5. Use {{Param}} to describe a parameter.

Example
{{Param|param_type|param_name}}
Stringoptional
Parameter 1 descriptionp1desc

Long description for parameter 1

Example
{{Pspan|param_name}} is the parameter
Stringoptional
Parameter 2 descriptionp2desc

Long description for parameter 2

Example
{{Pspan|param_name}} is the parameter
Stringoptional
Parameter 3 descriptionp3desc

Long description for parameter 3

Example
{{Pspan|param_name}} is the parameter
Stringoptional
Parameter 4 descriptionp4desc

Long description for parameter 4

Example
{{Pspan|param_name}} is the parameter
Stringoptional
Parameter 5 descriptionp5desc

Long description for parameter 5

Example
{{Pspan|param_name}} is the parameter
Stringoptional