Skip to main content

Class: Function_

Function represents a resolver provided by a Module.

A function always evaluates against a parent object and is given a set of named arguments.

Extends

  • BaseClient

Constructors

new Function_()

new Function_(parent?, _id?, _description?, _name?): Function_

Constructor is used for internal usage only, do not create object from it.

Parameters

parent?

parent.ctx?: Context

parent.queryTree?: QueryTree[]

_id?: FunctionID

_description?: string

_name?: string

Returns

Function_

Overrides

BaseClient.constructor

Methods

args()

args(): Promise<FunctionArg[]>

Arguments accepted by the function, if any.

Returns

Promise<FunctionArg[]>


description()

description(): Promise<string>

A doc string for the function, if any.

Returns

Promise<string>


id()

id(): Promise<FunctionID>

A unique identifier for this Function.

Returns

Promise<FunctionID>


name()

name(): Promise<string>

The name of the function.

Returns

Promise<string>


returnType()

returnType(): TypeDef

The type returned by the function.

Returns

TypeDef


with()

with(arg): Function_

Call the provided function with current Function.

This is useful for reusability and readability by not breaking the calling chain.

Parameters

arg

Returns

Function_


withArg()

withArg(name, typeDef, opts?): Function_

Returns the function with the provided argument

Parameters

name: string

The name of the argument

typeDef: TypeDef

The type of the argument

opts?: FunctionWithArgOpts

Returns

Function_


withDescription()

withDescription(description): Function_

Returns the function with the given doc string.

Parameters

description: string

The doc string to set.

Returns

Function_