Skip to main content

Class: SqlFunction

Extends​

Constructors​

new SqlFunction()​

new SqlFunction(name: string, args: List<SqlNode>, binding?: SqlBinding): SqlFunction

Parameters​

ParameterType
namestring
argsList<SqlNode>
binding?SqlBinding

Returns​

SqlFunction

Overrides​

SqlNode.constructor

Defined in​

packages/verse-core/src/db/sql.ts:1422

Properties​

args​

readonly args: List<SqlNode>

Defined in​

packages/verse-core/src/db/sql.ts:1424


name​

readonly name: string

Defined in​

packages/verse-core/src/db/sql.ts:1423

Accessors​

binding​

get binding(): undefined | SqlBinding

Returns​

undefined | SqlBinding

Inherited from​

SqlNode.binding

Defined in​

packages/verse-core/src/db/sql.ts:102


identifier​

get identifier(): SqlIdentifier

Returns​

SqlIdentifier

Inherited from​

SqlNode.identifier

Defined in​

packages/verse-core/src/db/sql.ts:127


nullable​

get nullable(): boolean

Returns​

boolean

Overrides​

SqlNode.nullable

Defined in​

packages/verse-core/src/db/sql.ts:1430


readable​

get readable(): boolean

Returns​

boolean

Inherited from​

SqlNode.readable

Defined in​

packages/verse-core/src/db/sql.ts:114


size​

get size(): number

Returns​

number

Inherited from​

SqlNode.size

Defined in​

packages/verse-core/src/db/sql.ts:155


type​

get type(): undefined | SqlType

Returns​

undefined | SqlType

Inherited from​

SqlNode.type

Defined in​

packages/verse-core/src/db/sql.ts:106

Methods​

accept()​

accept<T, S>(visitor: SqlVisitor<T, unknown>, state?: S): T

Type Parameters​

Type ParameterDefault type
T-
Sunknown

Parameters​

ParameterType
visitorSqlVisitor<T, unknown>
state?S

Returns​

T

Overrides​

SqlNode.accept

Defined in​

packages/verse-core/src/db/sql.ts:1463


apply()​

apply(ctor: Newable<SqlNode>): SqlNode

Parameters​

ParameterType
ctorNewable<SqlNode>

Returns​

SqlNode

Inherited from​

SqlNode.apply

Defined in​

packages/verse-core/src/db/sql.ts:147


bind()​

bind(binding: SqlBinding): SqlFunction

Parameters​

ParameterType
bindingSqlBinding

Returns​

SqlFunction

Overrides​

SqlNode.bind

Defined in​

packages/verse-core/src/db/sql.ts:1446


compare()​

compare(op: SqlBinaryOperator, other: SqlNode): SqlBinary

Parameters​

ParameterType
opSqlBinaryOperator
otherSqlNode

Returns​

SqlBinary

Inherited from​

SqlNode.compare

Defined in​

packages/verse-core/src/db/sql.ts:151


equals()​

equals(other: unknown): boolean

True if this and the other Collection have value equality, as defined by Immutable.is().

Note: This is equivalent to Immutable.is(this, other), but provided to allow for chained expressions.

Parameters​

ParameterType
otherunknown

Returns​

boolean

Overrides​

SqlNode.equals

Defined in​

packages/verse-core/src/db/sql.ts:1477


hashCode()​

hashCode(): number

Computes and returns the hashed identity for this Collection.

The hashCode of a Collection is used to determine potential equality, and is used when adding this to a Set or as a key in a Map, enabling lookup via a different instance.

const { List, Set } = require('immutable');
const a = List([ 1, 2, 3 ]);
const b = List([ 1, 2, 3 ]);
assert.notStrictEqual(a, b); // different instances
const set = Set([ a ]);
assert.equal(set.has(b), true);

Note: hashCode() MUST return a Uint32 number. The easiest way to guarantee this is to return myHash | 0 from a custom implementation.

If two values have the same hashCode, they are not guaranteed to be equal. If two values have different hashCodes, they must not be equal.

Note: hashCode() is not guaranteed to always be called before equals(). Most but not all Immutable.js collections use hash codes to organize their internal data structures, while all Immutable.js collections use equality during lookups.

Returns​

number

Overrides​

SqlNode.hashCode

Defined in​

packages/verse-core/src/db/sql.ts:1484


identify()​

identify(aliaser: (n: SqlNode) => SqlNode): SqlNode

Parameters​

ParameterType
aliaser(n: SqlNode) => SqlNode

Returns​

SqlNode

Overrides​

SqlNode.identify

Defined in​

packages/verse-core/src/db/sql.ts:1434


isAggregate()​

isAggregate(): boolean

Returns​

boolean

Overrides​

SqlNode.isAggregate

Defined in​

packages/verse-core/src/db/sql.ts:1459


map()​

map(mapper: (node: SqlNode) => SqlNode): SqlNode

Parameters​

ParameterType
mapper(node: SqlNode) => SqlNode

Returns​

SqlNode

Inherited from​

SqlNode.map

Defined in​

packages/verse-core/src/db/sql.ts:143


reduce()​

reduce(): List<SqlNode>

Returns​

List<SqlNode>

Inherited from​

SqlNode.reduce

Defined in​

packages/verse-core/src/db/sql.ts:139


rewrite()​

rewrite(rewriter: SqlRewriter): SqlNode

Parameters​

ParameterType
rewriterSqlRewriter

Returns​

SqlNode

Overrides​

SqlNode.rewrite

Defined in​

packages/verse-core/src/db/sql.ts:1467


scope()​

scope(object: SqlIdentifier): SqlNode

Parameters​

ParameterType
objectSqlIdentifier

Returns​

SqlNode

Overrides​

SqlNode.scope

Defined in​

packages/verse-core/src/db/sql.ts:1438


uniquify()​

uniquify(_: Set<string>, __: (node: SqlNode) => SqlAlias): SqlNode

Parameters​

ParameterType
_Set<string>
__(node: SqlNode) => SqlAlias

Returns​

SqlNode

Inherited from​

SqlNode.uniquify

Defined in​

packages/verse-core/src/db/sql.ts:135