Crate limbo_ext

Crate limbo_ext 

Source

Macros§

register_extension
Register your extension with ‘core’ by providing the relevant functions

Structs§

AggCtx
Conn
core database connection public fields for core only
Connection
Public API for methods to allow extensions to query other tables for the connection that opened the VTable. This value and its resources are cleaned up when the VTable is dropped, so there is no need to manually close the connection.
ConstraintInfo
The primary argument to xBestIndex, which describes a constraint in a query involving a virtual table.
ConstraintUsage
Returned from xBestIndex to describe how the virtual table can use the constraints in the WHERE clause of a query.
ExtIndexInfo
FFI representation of IndexInfo.
ExtensionApi
ExtensionApiRef
IndexInfo
The internal (core) representation of an ‘index’ on a virtual table. Returned from xBestIndex and then processed and passed to VFilter.
OrderByInfo
Describes an ORDER BY clause in a query involving a virtual table. Passed along with the constraints to xBestIndex.
Statement
Prepared statement for querying a core database connection public API for extensions Statements can be manually closed.
Stmt
Internal/core use only Extensions should not import or use this type directly
VTabCreateResult
VTabModuleImpl
Value

Enums§

ConstraintOp
ResultCode
Error type is of type ExtError which can be either a user defined error or an error code
StepResult
StepResult is used to represent the state of a query as it is exposed to the public API of a connection in a virtual table extension. the IO variant is always handled internally and therefore is not included here.
VTabKind
ValueType

Traits§

AggFunc
VTabCursor
VTabModule
VTable

Type Aliases§

ExtResult
ExtensionEntryPoint
FinalizeFunction
InitAggFunction
ScalarFunction
StepFunction

Attribute Macros§

scalar
Declare a scalar function for your extension. This requires the name: #[scalar(name = “example”)] of what you wish to call your function with.

Derive Macros§

AggregateDerive
Define an aggregate function for your extension by deriving AggregateDerive on a struct that implements the AggFunc trait.
VTabModuleDerive
Macro to derive a VTabModule for your extension. This macro will generate the necessary functions to register your module with core. You must implement the VTabModule, VTable, and VTabCursor traits.