Small. Fast. Reliable.
Choose any three.

SQLite C Interface

Перегрузите функцию для виртуальной таблицы

int sqlite3_overload_function(sqlite3*, const char *zFuncName, int nArg);

Виртуальные таблицы могут обеспечить альтернативные внедрения функций, используя xFindFunction виртуального модуля таблицы. Но глобальные версии тех функций должны существовать, чтобы быть перегруженными.

API удостоверяется, что глобальная версия функции с конкретным именем и числом параметров существует. Если никакая такая функция не существует, прежде чем этот API вызывают, новая функция создается. Внедрение новой функции всегда заставляет исключение быть брошенным. Таким образом, новая функция ни для чего не хороша отдельно. Ее единственная цель состоит в том, чтобы быть функцией заполнителя, которая может быть перегружена виртуальной таблицей.