Comment on page
func
The function class for Cheddar
name | type | description |
arguments | 2D array | (described below) this matrix described the arguments for the function. In the form of [ ["arg_name", { <options> }] ] |
body | function | (described below) the function body |
name | type | default | description |
Type | cheddar.class | n/a | If provided, the argument is required to be of the given type |
Default | cheddar.class{} | n/a | If provided and the argument is not provided, it will be set to this rather than throwing an error. |
Splat | bool | false | If provided, this and the following arguments will be combined into a cheddar.array object. |
Optional | bool | false | If true, the argument will be nil if not provided |
argument | description |
first | This is the function's scope as a cheddar.scope . |
second | This is a function which returns a variable's value, given a variable name. |
-> (a, b = 0) a + b
, with api:new cheddar.func(
[
["a", {}],
["b", {
Default: cheddar.init(
cheddar.number,
10, 0, 0
)
}]
],
function(scope, input) {
return cheddar.init(
cheddar.number,
10, 0,
input("a").value + input("b").value
);
}
)
func.exec([
arg1, arg2, ...
], scope)
scope
will be set to self
variable, if none, set to null
.func.args
the 2D matrix representing the arguments the function is requesting.
Last modified 3yr ago