Modules

Join enum to simplify update handling of joins.

Macros

Structs

Cache keeps static table information in the TableMapperRegistry and may lookup SQL statements to bypass the SqlBuilder. However this is currently not implemented.

Handles the standart filters as documented in the guide. Returns FilterInvalid for any attempt to use FN filters.

The struct hold a list of field names. Users of the Toql library should use the fields! macro to build it. The fields! macro provides compile time garanties. Unlike Query Fields is not typesafe. This will be improved in the future.

Keeps page count information. See load_page for details.

The struct hold a list of path names. Users of the Toql library should use the paths! macro to build it. The paths! macro provides compile time garanties. Unlike Query Paths is not typesafe. This will be improved in the future.

The query parser. It contains only a single static method to turn a string into a Query struct.

The resolver may hold values for placeholder tokens from SqlExpr and replace those.

A tuple to hold a raw SQL statement and the SQL arguments. Sql is the result from the Resolver and is ready to be sent to the database.

A SQL expression is a list of tokens that can be resolved into SQL.

The registry hold all table mappers togheter.

Enums

This determines how the AliasTranslator formats table aliases in SQL code. Toql uses table aliases for every column. E.g. in user_address_country.id the table alias is user_address_country and id is the column.

The Join struct that hold either an entity or its key.

It tells Toql to build and run an additional query to count the total number of records.

Represents all errors from the Resolver

Enum to keep the different argument types.

Represents all errors from the SQL Builder

Represents all errors

Traits

Bind generic types to this trait when writing database independend functions.

Bind generic types to this trait when writing database independend functions.

This is implemented by Toql Derive for all dervied structs with generic row and error. The implementation of primitive types with concrete row and error type must be done by the database crate.

Bind generic types to this trait when writing database independend functions.

Trait to provide the entity type for a key. This is only used for ergonomics of the api.

Trait to read the key of a struct.

Trait to set the key of a struct.

Bind generic types to this trait when writing database independend functions.

An iterator trait to turn entities into keys.

Used by code produced from Toql derive.

Every database provider implements this trait. This ensures that the user of Toql can easily switch databases.

Bind generic types to this trait when writing database independend functions.

Type Definitions

Derive Macros

Derive to add Toql functionality to your struct.

Derive to deserialize enums.