v.io: v.io/v23/query Index | Files | Directories

package query

import "v.io/v23/query"

The query packages implement Vanadium's query capabilities.

The syncql package is used by clients of a Vanadium component that supports queries. It includes: ResultStream (which is the product of executing a query), the error messages that could be returned from performing a query, and a function to parse an error to get the offset into a query that caused the error. syncql does not include the Exec function as that must be provided by the component that supports queries.

The engine package implements the query engine. A component that supports queries calls the Exec function in this package.

The datasource package contains the interfaces that a Vanadium component must implement in order to use the query engine.

The internal package provides a reference implementation of the queries package. Its sole client is the engine package.


Package Files



enginePackage engine defines a Create function which returns an instance of datasource.QueryEngine
engine/datasourcePackage datasource defines the interfaces a system must implement to support querying.
engine/internalPackage internal implements Exec, executing SQL-like queries on a given database.
engine/internal/querycheckerPackage querychecker performs a semantic check on an AST produced by the queryparser package.
engine/internal/queryfunctionsPackage queryfunctions describes SyncQL's built-in functions.
engine/internal/queryparserPackage queryparser is a parser to parse a simplified select statement (a la SQL) for the Vanadium key value store (a.k.a., syncbase).
engine/internal/testPackage query_test contains tests for the query package.
engine/publicPackage public defines the QueryEngine interface which is returned from calling v.io/v23/query/engine.Create and PreparedStatement which is returned from the QueryEngine.PrepareStatement function.
patternPackage pattern handles parsing and matching SQL LIKE-style glob patterns.
syncqlThe ResultStream interface is used to iterate over query results.

Updated 2020-10-29. Refresh now. Tools for package owners.