Table of Contents

Interface ISqliteFunctions

Namespace
NextORM.Core
Assembly
nextorm.core.dll

A dialect's renderer for the SQLite-only SQL surface exposed through Sqlite (SqliteFunctions): the core scalars (printf/format, hex/unhex, random/randomblob, quote, typeof, glob, unicode/char, soundex, octet_length, if/ifnull), the JSON1 functions/operators/aggregates (json_extract, ->/->>, json_set, json_group_array, ...), the date functions (timediff, unixepoch, julianday), the math-extension functions (acos, degrees, log2, mod, pi, ...) and the full-text (FTS3/FTS4/FTS5) query surface (Match, Rank, FTS5bm25, Highlight, FTS3Offsets, ...). The predicate and the renderer live on one object, so a name the dialect reports as supported always has a rendering, and a provider that cannot express the surface returns null from SqliteFunctions.

public interface ISqliteFunctions
Extension Methods

Remarks

Unlike the stateless renderers, this object carries both the per-name predicate and the renderer, hence the plural capability-noun name rather than the *Renderer suffix.

Methods

Render(string, IReadOnlyList<string>)

Renders the SQLite function name over the already-rendered args. name is the CLR method name of the SqliteFunctions member (for example printf, json_extract, json_get).

string Render(string name, IReadOnlyList<string> args)

Parameters

name string
args IReadOnlyList<string>

Returns

string

Supports(string)

True when the SQLite function name can be rendered.

bool Supports(string name)

Parameters

name string

Returns

bool