params multimethod

Methods

params(m:NativeMethod)
Introspect method parameters

Example

(+).Arr()[2].params().each(echo)
# {name=a, type=<Type Int>}
# {name=b, type=<Type Int>}
params(c:UserDefinedMethod)
Introspect closure parameters.

Example

... F the_one(something, predicate, body:Fun, found_more:Fun={null}, found_none:Fun={null}) ...
the_one.Arr()[1].params().each(echo)# {name=something, type=<Type Any>}
# {name=predicate, type=<Type Any>}
# {name=body, type=<Type Fun>}
# {name=found_more, type=<Type Fun>, dflt=<UserDefinedMethod <anonymous> at /usr/share/ngs/stdlib.ngs:198>}
# {name=found_none, type=<Type Fun>, dflt=<UserDefinedMethod <anonymous> at /usr/share/ngs/stdlib.ngs:198>}