Template:BSLfuncinfo: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (oops)
(testing support for variadic functions; trying clearer code style)
Line 22: Line 22:
-->}}
-->}}
|style="font-size:166%; vertical-align:bottom"|{{{name}}}(
|style="font-size:166%; vertical-align:bottom"|{{{name}}}(
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg1variadic|}}}|''|}}<!--         use italics if variadic
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg1variadic|}}}|''|}}<!--         use italics if variadic
                                             -->{{#if:{{{arg1name|}}}<!--
                                             -->{{#if:{{{arg1name|}}}<!--
                                                 -->|{{{arg1name|}}}<!--                   print arg 1 name if supplied
                                                 -->|{{{arg1name|}}}<!--                   print arg 1 name if supplied
                                                   -->{{#if:{{{arg1altname|}}}<!--
                                                   -->{{#if:{{{arg1altname|}}}<!--
                                                       -->|<u>or</u> {{{arg1altname|}}}<!--print alternative arg 1 if present
                                                       -->| <u>or</u> {{{arg1altname|}}}<!--print alternative arg 1 if present
                                                       -->|<!--
                                                       -->|<!--
                                                   -->}}<!--
                                                   -->}}<!--
                                                   -->{{#if:{{{arg2name|}}}|, |}}<!--       if there is a next arg, print comma
                                                   -->{{#if:{{{arg2name|}}}|, |}}<!--       if there is a next arg, print comma
                                                 -->|void );<!--                           if no args, print "void" and a close parens
                                                 -->|void );<!--                           if no args, print "void" and a close parens
                                             -->}}
                                             -->}}
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg2name|}}}
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg2variadic|}}}|''|}}<!--
                                                 |{{{arg2name|}}} {{#if:{{{arg2altname|}}}
                                            -->{{#if:{{{arg2name|}}}<!--
                                                                    |<u>or</u> {{{arg2altname|}}}|}}
                                                 -->|{{{arg2name|}}}<!--
                                                                {{#if:{{{arg3name|}}}|, |}}
                                                  -->{{#if:{{{arg2altname|}}}<!--
                                                 |{{#if:{{{arg1name|}}}| ); |}} }}                   <!--if this was last arg, close parentheses-->
                                                      -->| <u>or</u> {{{arg2altname|}}}<!--
                                                      -->|<!--
                                                  -->}}<!--
                                                  -->{{#if:{{{arg3name|}}}|, |}}<!--
                                                 -->|{{#if:{{{arg1name|}}}| ); |}} }}   <!--if this was last arg, close parentheses-->
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg3name|}}}
|style="font-size:166%; vertical-align:bottom"|{{#if:{{{arg3name|}}}
                                                 |{{{arg3name|}}} {{#if:{{{arg3altname|}}}
                                                 |{{{arg3name|}}} {{#if:{{{arg3altname|}}}

Revision as of 07:07, 14 November 2015


BSLfunc allows for standardized listing of BSL functions. The assumption at the moment is that the most arguments a function can take is four; this will be raised if some functions are discovered to take more arguments.

Parameters:

type
Return type of function; should be "int", "string", "float", "bool", or "void".
default
Default return value of function, if there is one at the time the level starts.
name
Name of function.
mac, win
You don't have to use these unless the function is not available and working on one platform; set the appropriate parameter(s) to "no" if that is the case.
arg1optional, arg2optional, arg3optional, arg4optional
If this argument can be omitted, set this to "yes".
arg1default, arg2default, arg3default, arg4default
Optional arguments have default assumed values that are used when the argument is not used explicitly; give those values here.
arg1type, arg2type, arg3type, arg4type
If these arguments to the BSL function exist, give their types here.
arg1name, arg2name, arg3name, arg4name
If these arguments to the BSL function exist, give their names here.
arg1alttype, arg2alttype, arg3alttype, arg4alttype
If a BSL function can take more than one kind of data in a given argument position, give the second argument type here.
arg1altname, arg2altname, arg3altname, arg4altname
If a BSL function can take more than one kind of data in a given argument position, give the second argument name here.

Here's a default blank call with all parameters:

{{BSLfunc
|type=
|default=
|name=
|mac=
|win=
|arg1optional= |arg1default= |arg1type= |arg1name= |arg1alttype= |arg1altname=
|arg2optional= |arg2default= |arg2type= |arg2name= |arg2alttype= |arg2altname=
|arg3optional= |arg3default= |arg3type= |arg3name= |arg3alttype= |arg3altname=
|arg4optional= |arg4default= |arg4type= |arg4name= |arg4alttype= |arg4altname= }}