Jump to content

Template:BSLfuncinfo: Difference between revisions

only generating columns as needed, so that unused columns don't pile up as empty space on the right; removing "(optional)" tag -- optional parameters will simply be indicated by the italics and the default value
(forgot to make name bold; it's hard to close the parameters' bold tags, so what if we just don't?)
(only generating columns as needed, so that unused columns don't pile up as empty space on the right; removing "(optional)" tag -- optional parameters will simply be indicated by the italics and the default value)
Line 1: Line 1:
<includeonly>{{Anchor|{{{name|placeholder}}}}}
<includeonly>{{Anchor|{{{name|placeholder}}}}}
{| class="BSLFuncInfo"
{| class="BSLFuncInfo"
!<!--func type, name, default return value-->
!<!--arg 1 type, name, default value-->
!<!--arg 2 type, name, default value-->
!<!--arg 3 type, name, default value-->
!<!--arg 4 type, name, default value-->
!<!--arg 5 type, name, default value-->
!<!--arg 6 type, name, default value-->
!<!--arg 7 type, name, default value-->
!<!--arg 8 type, name, default value-->
|-
|-
|{{{type|}}}
|{{{type|}}}
|align="center"|{{#if:{{{arg1name|}}}<!--
{{#if:{{{arg1name|}}}|
                  -->|{{{arg1type|}}} {{#if:{{{arg1alttype|}}}|<u>or</u> {{{arg1alttype|}}}}} {{#if:{{{arg1optional|}}}|(optional)|}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg1type|}}} {{#if:{{{arg1alttype|}}}|<u>or</u> {{{arg1alttype|}}}}}|
                  -->|[[{{{name}}}|[edit]]]<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
            -->}}
{{#if:{{{arg2name|}}}|
|align="center"|{{#if:{{{arg2name|}}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg2type|}}} {{#if:{{{arg2alttype|}}}|<u>or</u> {{{arg2alttype|}}}}}|
                  -->|{{{arg2type|}}} {{#if:{{{arg2alttype|}}}|<u>or</u> {{{arg2alttype|}}}}} {{#if:{{{arg2optional|}}}|(optional)|}}<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
                  -->|{{#if:{{{arg1name|}}}|[[{{{name}}}|[edit]]]}}<!--
{{#if:{{{arg3name|}}}|
            -->}}
{{Pipe}}align="center"{{Pipe}}{{{arg3type|}}} {{#if:{{{arg3alttype|}}}|<u>or</u> {{{arg3alttype|}}}}}|
|align="center"|{{#if:{{{arg3name|}}}<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
                  -->|{{{arg3type|}}} {{#if:{{{arg3alttype|}}}|<u>or</u> {{{arg3alttype|}}}}} {{#if:{{{arg3optional|}}}|(optional)|}}<!--
{{#if:{{{arg4name|}}}|
                  -->|{{#if:{{{arg2name|}}}|[[{{{name}}}|[edit]]]}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg4type|}}} {{#if:{{{arg4alttype|}}}|<u>or</u> {{{arg4alttype|}}}}}|
            -->}}
{{Pipe}}[[{{{name}}}|[edit]]]}}
|align="center"|{{#if:{{{arg4name|}}}<!--
{{#if:{{{arg5name|}}}|
                  -->|{{{arg4type|}}} {{#if:{{{arg4alttype|}}}|<u>or</u> {{{arg4alttype|}}}}} {{#if:{{{arg4optional|}}}|(optional)|}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg5type|}}} {{#if:{{{arg5alttype|}}}|<u>or</u> {{{arg5alttype|}}}}}|
                  -->|{{#if:{{{arg3name|}}}|[[{{{name}}}|[edit]]]}}<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
            -->}}
{{#if:{{{arg6name|}}}|
|align="center"|{{#if:{{{arg5name|}}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg6type|}}} {{#if:{{{arg6alttype|}}}|<u>or</u> {{{arg6alttype|}}}}}|
                  -->|{{{arg5type|}}} {{#if:{{{arg5alttype|}}}|<u>or</u> {{{arg5alttype|}}}}} {{#if:{{{arg5optional|}}}|(optional)|}}<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
                  -->|{{#if:{{{arg4name|}}}|[[{{{name}}}|[edit]]]}}<!--
{{#if:{{{arg7name|}}}|
            -->}}
{{Pipe}}align="center"{{Pipe}}{{{arg7type|}}} {{#if:{{{arg7alttype|}}}|<u>or</u> {{{arg7alttype|}}}}}|
|align="center"|{{#if:{{{arg6name|}}}<!--
{{Pipe}}[[{{{name}}}|[edit]]]}}
                  -->|{{{arg6type|}}} {{#if:{{{arg6alttype|}}}|<u>or</u> {{{arg6alttype|}}}}} {{#if:{{{arg6optional|}}}|(optional)|}}<!--
{{#if:{{{arg8name|}}}|
                  -->|{{#if:{{{arg5name|}}}|[[{{{name}}}|[edit]]]}}<!--
{{Pipe}}align="center"{{Pipe}}{{{arg8type|}}} {{#if:{{{arg8alttype|}}}|<u>or</u> {{{arg8alttype|}}}}}|
            -->}}
{{Pipe}}[[{{{name}}}|[edit]]]}}
|align="center"|{{#if:{{{arg7name|}}}<!--
                  -->|{{{arg7type|}}} {{#if:{{{arg7alttype|}}}|<u>or</u> {{{arg7alttype|}}}}} {{#if:{{{arg7optional|}}}|(optional)|}}<!--
                  -->|{{#if:{{{arg6name|}}}|[[{{{name}}}|[edit]]]}}<!--
            -->}}
|align="center"|{{#if:{{{arg8name|}}}<!--
                  -->|{{{arg8type|}}} {{#if:{{{arg8alttype|}}}|<u>or</u> {{{arg8alttype|}}}}} {{#if:{{{arg8optional|}}}|(optional)|}}<!--
                  -->|{{#if:{{{arg7name|}}}|[[{{{name}}}|[edit]]]}}<!--
            -->}}
|-
|-
|'''{{{name}}}('''
|'''{{{name}}}('''<!--
|align="center"|'''{{#if:{{{arg1name|}}}<!--
-->{{#if:{{{arg1name|}}}|<!--                                       if this arg exists... -->
                    -->|{{#if:{{{arg1optional|}}}|''|}}<!--         start italics if optional arg
{{Pipe}}align="center"{{Pipe}}'''<!--                                create a cell, then...
                      -->{{{arg1name|}}}<!--                         print arg 1 name if supplied
-->{{#if:{{{arg1optional|}}}|''|}}<!--                               start italics if optional arg
                      -->{{#if:{{{arg1altname|}}}<!--
-->{{{arg1name|}}}<!--                                               print arg name
                          -->|&nbsp;<u>or</u> {{{arg1altname|}}}<!--print alternative arg 1 if present
-->{{#if:{{{arg1altname|}}}|&nbsp;<u>or</u> {{{arg1altname|}}}}}<!-- print " or " and alternate arg name if supplied
                      -->}}<!--
-->{{#if:{{{arg1optional|}}}|''|}}<!--                               end italics if optional arg
                      -->{{#if:{{{arg1optional|}}}|''|}}<!--         end italics if optional arg
-->{{#if:{{{arg2name|}}}|, |}}|<!--                                 and if there is a next arg, print a comma -->
                      -->{{#if:{{{arg2name|}}}|, |}}<!--             if there is a next arg, print comma
{{Pipe}} );}}<!--                                                   else if no args, just close parentheses
                    -->| );<!--                                     if no args, just close parentheses
 
                -->}}
-->{{#if:{{{arg2name|}}}|
|align="center"|'''{{#if:{{{arg2name|}}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                    -->|{{#if:{{{arg2optional|}}}|''|}}<!--
-->{{#if:{{{arg2optional|}}}|''|}}<!--
                      -->{{{arg2name|}}}<!--
-->{{{arg2name|}}}<!--
                      -->{{#if:{{{arg2altname|}}}<!--
-->{{#if:{{{arg2altname|}}}|&nbsp;<u>or</u> {{{arg2altname|}}}}}<!--
                          -->|&nbsp;<u>or</u> {{{arg2altname|}}}<!--
-->{{#if:{{{arg2optional|}}}|''|}}<!--
                      -->}}<!--
-->{{#if:{{{arg3name|}}}|, |}}|
                      -->{{#if:{{{arg2optional|}}}|''|}}<!--
{{Pipe}}{{#if:{{{arg1name|}}}| ); |}}}}<!--                         if this was last arg, close parentheses
                      -->{{#if:{{{arg3name|}}}|, |}}<!--
 
                    -->|{{#if:{{{arg1name|}}}| ); |}}<!--           if this was last arg, close parentheses
-->{{#if:{{{arg3name|}}}|
                -->}}
{{Pipe}}align="center"{{Pipe}}'''<!--
|align="center"|'''{{#if:{{{arg3name|}}}<!--
-->{{#if:{{{arg3optional|}}}|''|}}<!--
                    -->|{{#if:{{{arg3optional|}}}|''|}}<!--
-->{{{arg3name|}}}<!--
                      -->{{{arg3name|}}}<!--
-->{{#if:{{{arg3altname|}}}|&nbsp;<u>or</u> {{{arg3altname|}}}}}<!--
                      -->{{#if:{{{arg3altname|}}}<!--
-->{{#if:{{{arg3optional|}}}|''|}}<!--
                          -->|&nbsp;<u>or</u> {{{arg3altname|}}}<!--
-->{{#if:{{{arg4name|}}}|, |}}|
                      -->}}<!--
{{Pipe}}{{#if:{{{arg2name|}}}| ); |}}}}<!--
                      -->{{#if:{{{arg3optional|}}}|''|}}<!--
 
                      -->{{#if:{{{arg4name|}}}|, |}}<!--
-->{{#if:{{{arg4name|}}}|
                    -->|{{#if:{{{arg2name|}}}| ); |}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                -->}}
-->{{#if:{{{arg4optional|}}}|''|}}<!--
|align="center"|'''{{#if:{{{arg4name|}}}<!--
-->{{{arg4name|}}}<!--
                    -->|{{#if:{{{arg4optional|}}}|''|}}<!--
-->{{#if:{{{arg4altname|}}}|&nbsp;<u>or</u> {{{arg4altname|}}}}}<!--
                      -->{{{arg4name|}}}<!--
-->{{#if:{{{arg4optional|}}}|''|}}<!--
                      -->{{#if:{{{arg4altname|}}}<!--
-->{{#if:{{{arg5name|}}}|, |}}|
                          -->|&nbsp;<u>or</u> {{{arg4altname|}}}<!--
{{Pipe}}{{#if:{{{arg3name|}}}| ); |}}}}<!--
                      -->}}<!--
 
                      -->{{#if:{{{arg4optional|}}}|''|}}<!--
-->{{#if:{{{arg5name|}}}|
                      -->{{#if:{{{arg5name|}}}|, |}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                    -->|{{#if:{{{arg3name|}}}| ); |}}<!--
-->{{#if:{{{arg5optional|}}}|''|}}<!--
                -->}}
-->{{{arg5name|}}}<!--
|align="center"|'''{{#if:{{{arg5name|}}}<!--
-->{{#if:{{{arg5altname|}}}|&nbsp;<u>or</u> {{{arg5altname|}}}}}<!--
                    -->|{{#if:{{{arg5optional|}}}|''|}}<!--
-->{{#if:{{{arg5optional|}}}|''|}}<!--
                      -->{{{arg5name|}}}<!--
-->{{#if:{{{arg6name|}}}|, |}}|
                      -->{{#if:{{{arg5altname|}}}<!--
{{Pipe}}{{#if:{{{arg4name|}}}| ); |}}}}<!--
                          -->|&nbsp;<u>or</u> {{{arg5altname|}}}<!--
 
                      -->}}<!--
-->{{#if:{{{arg6name|}}}|
                      -->{{#if:{{{arg5optional|}}}|''|}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                      -->{{#if:{{{arg6name|}}}|, |}}<!--
-->{{#if:{{{arg6optional|}}}|''|}}<!--
                    -->|{{#if:{{{arg4name|}}}| ); |}}<!--
-->{{{arg6name|}}}<!--
                -->}}
-->{{#if:{{{arg6altname|}}}|&nbsp;<u>or</u> {{{arg6altname|}}}}}<!--
|align="center"|'''{{#if:{{{arg6name|}}}<!--
-->{{#if:{{{arg6optional|}}}|''|}}<!--
                    -->|{{#if:{{{arg6optional|}}}|''|}}<!--
-->{{#if:{{{arg7name|}}}|, |}}|
                      -->{{{arg6name|}}}<!--
{{Pipe}}{{#if:{{{arg5name|}}}| ); |}}}}<!--
                      -->{{#if:{{{arg6altname|}}}<!--
 
                          -->|&nbsp;<u>or</u> {{{arg6altname|}}}<!--
-->{{#if:{{{arg7name|}}}|
                      -->}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                      -->{{#if:{{{arg6optional|}}}|''|}}<!--
-->{{#if:{{{arg7optional|}}}|''|}}<!--
                      -->{{#if:{{{arg7name|}}}|, |}}<!--
-->{{{arg7name|}}}<!--
                    -->|{{#if:{{{arg5name|}}}| ); |}}<!--
-->{{#if:{{{arg7altname|}}}|&nbsp;<u>or</u> {{{arg7altname|}}}}}<!--
                -->}}
-->{{#if:{{{arg7optional|}}}|''|}}<!--
|align="center"|'''{{#if:{{{arg7name|}}}<!--
-->{{#if:{{{arg8name|}}}|, |}}|
                    -->|{{#if:{{{arg7optional|}}}|''|}}<!--
{{Pipe}}{{#if:{{{arg6name|}}}| ); |}}}}<!--
                      -->{{{arg7name|}}}<!--
 
                      -->{{#if:{{{arg7altname|}}}<!--
-->{{#if:{{{arg8name|}}}|
                          -->|&nbsp;<u>or</u> {{{arg7altname|}}}<!--
{{Pipe}}align="center"{{Pipe}}'''<!--
                      -->}}<!--
-->{{#if:{{{arg8optional|}}}|''|}}<!--
                      -->{{#if:{{{arg7optional|}}}|''|}}<!--
-->{{{arg8name|}}}<!--
                      -->{{#if:{{{arg8name|}}}|, |}}<!--
-->{{#if:{{{arg8altname|}}}|&nbsp;<u>or</u> {{{arg8altname|}}}}}<!--
                    -->|{{#if:{{{arg6name|}}}| ); |}}<!--
-->{{#if:{{{arg8optional|}}}|''|}}<!--
                -->}}
{{Pipe}}{{#if:{{{arg7name|}}}| ); |}}}}
|align="center"|'''{{#if:{{{arg8name|}}}<!--
                    -->|{{#if:{{{arg8optional|}}}|''|}}<!--
                      -->{{{arg8name|}}}<!--
                      -->{{#if:{{{arg8altname|}}}<!--
                          -->|&nbsp;<u>or</u> {{{arg8altname|}}}<!--
                      -->}}<!--
                      -->{{#if:{{{arg8optional|}}}|''|}}<!-- no check for comma after this since this is the last possible arg
                    -->|{{#if:{{{arg7name|}}}| ); |}}<!--
                -->}}
|-
|-
|default:       {{#if:{{{default|}}}   |{{{default|}}}| --}}                               <!-- print "--" if there is no default return value for function -->
|default: {{#if:{{{default|}}}|{{{default|}}}| --}}<!-- print "--" if there is no default return value for function
|align="center"|{{#if:{{{arg1default|}}}|{{{arg1default|}}}|{{#if:{{{arg1name|}}}| --|}}|}} <!-- print "--" if there is arg in this position with no default -->
-->{{#if:{{{arg1default|}}}|
|align="center"|{{#if:{{{arg2default|}}}|{{{arg2default|}}}|{{#if:{{{arg2name|}}}| --|}}|}}
{{Pipe}}align="center"{{Pipe}}{{{arg1default|}}}|{{#if:{{{arg1name|}}}|
|align="center"|{{#if:{{{arg3default|}}}|{{{arg3default|}}}|{{#if:{{{arg3name|}}}| --|}}|}}
{{Pipe}} --|}}|}}<!--
|align="center"|{{#if:{{{arg4default|}}}|{{{arg4default|}}}|{{#if:{{{arg4name|}}}| --|}}|}}
 
|align="center"|{{#if:{{{arg5default|}}}|{{{arg5default|}}}|{{#if:{{{arg5name|}}}| --|}}|}}
-->{{#if:{{{arg2default|}}}|
|align="center"|{{#if:{{{arg6default|}}}|{{{arg6default|}}}|{{#if:{{{arg6name|}}}| --|}}|}}
{{Pipe}}align="center"{{Pipe}}{{{arg2default|}}}|{{#if:{{{arg2name|}}}|
|align="center"|{{#if:{{{arg7default|}}}|{{{arg7default|}}}|{{#if:{{{arg7name|}}}| --|}}|}}
{{Pipe}} --|}}|}}<!--
|align="center"|{{#if:{{{arg8default|}}}|{{{arg8default|}}}|{{#if:{{{arg8name|}}}| --|}}|}}
 
-->{{#if:{{{arg3default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg3default|}}}|{{#if:{{{arg3name|}}}|
{{Pipe}} --|}}|}}<!--
 
-->{{#if:{{{arg4default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg4default|}}}|{{#if:{{{arg4name|}}}|
{{Pipe}} --|}}|}}<!--
 
-->{{#if:{{{arg5default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg5default|}}}|{{#if:{{{arg5name|}}}|
{{Pipe}} --|}}|}}<!--
 
-->{{#if:{{{arg6default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg6default|}}}|{{#if:{{{arg6name|}}}|
{{Pipe}} --|}}|}}<!--
 
-->{{#if:{{{arg7default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg7default|}}}|{{#if:{{{arg7name|}}}|
{{Pipe}} --|}}|}}<!--
 
-->{{#if:{{{arg8default|}}}|
{{Pipe}}align="center"{{Pipe}}{{{arg8default|}}}|{{#if:{{{arg8name|}}}|
{{Pipe}} --|}}|}}
|}</includeonly><noinclude>'''BSLfuncinfo''' allows for standardized listing of BSL functions. Since BSL allows for functions to take up to eight arguments, and each argument can be described here by up to six parameters, this makes '''BSLfuncinfo''' the most complex template on the wiki. However, you'll rarely need to use more than a few of these parameters to describe an average function.
|}</includeonly><noinclude>'''BSLfuncinfo''' allows for standardized listing of BSL functions. Since BSL allows for functions to take up to eight arguments, and each argument can be described here by up to six parameters, this makes '''BSLfuncinfo''' the most complex template on the wiki. However, you'll rarely need to use more than a few of these parameters to describe an average function.