pub fn every_function() -> Vec<FunctionEntry>Expand description
Returns every built-in this build has, in the order function_list reports.
The list is written out rather than derived from the lookup tables because
the arity is per overload: substr is here twice, at two and at three
arguments, which is what SQLite reports and what an application checking
whether a call will bind needs to see.
It must name everything the binder will resolve, and a completeness check
found that it did not. The register answered 161 names where SQLite answers 218, and
the functionality behind most of the difference was present and
byte-identical - current_date, regexp, unistr, median, bm25,
matchinfo and the rest all answered when called. A caller that
introspects the register to decide what it may use was told less than the
truth, with no error, which is the one silent difference this project has
had. The additions below were each verified against the engine before being
listed: a name here that the binder refuses would be the same defect
pointing the other way.