Skip to main content

Interface: Language<Name>

Defined in: packages/core/src/lang-manager.ts:48

Descriptor for a query language that can be registered with LanguageManager.

Extended by​

Type Parameters​

Type ParameterDefault type
Name extends stringstring

Properties​

aggregates​

aggregates: AggregateFn[]

Defined in: packages/core/src/lang-manager.ts:56

Language-specific aggregate functions registered alongside any global ones.


castables​

castables: Castable[]

Defined in: packages/core/src/lang-manager.ts:58

Language-specific castable type keywords registered alongside any global ones.


createParser​

createParser: (mgr) => Parser

Defined in: packages/core/src/lang-manager.ts:60

Factory that creates a fresh parser instance bound to the given language manager.

Parameters​

ParameterType
mgrLanguageManager

Returns​

Parser


functions​

functions: Fn[]

Defined in: packages/core/src/lang-manager.ts:54

Language-specific functions registered alongside any global ones.


name​

readonly name: Lowercase<Name>

Defined in: packages/core/src/lang-manager.ts:50

Lowercase language name used as the lookup key.


operators​

operators: Operator[]

Defined in: packages/core/src/lang-manager.ts:52

Language-specific operators registered alongside any global ones.


serialize​

serialize: SerializeFn

Defined in: packages/core/src/lang-manager.ts:75

Serializes executor output into the user-facing result format.


visitors​

visitors: Partial<PlanVisitors> & Pick<PlanVisitors, "executor"> & object

Defined in: packages/core/src/lang-manager.ts:64

Visitors for extending the default DortDB behavior. Usually required when adding new PlanOperators. Some of the visitors are always required, for example, the logical plan builder.

Type Declaration​

logicalPlanBuilder​

logicalPlanBuilder: (db) => LogicalPlanBuilder

Constructor for the logical plan builder that translates AST nodes into plan operators.

Creates a new logical plan builder bound to db.

Parameters​
ParameterType
dbDortDBAsFriend
Returns​

LogicalPlanBuilder