| GenericExecuteResult | ZtdQuery | Generic implementation of ExecuteResult. |
| ResultSelectRunner | ZtdQuery | Executes result-select queries and returns rows. |
| RewriteRefusal | ZtdQuery | What a session makes of a statement the rewriter would not take. |
| Session | ZtdQuery | Aggregates ZTD session state and core collaborators. |
| SqlBehaviorRule | ZtdQuery\Config | Represents a single SQL behavior rule with pattern and associated behavior. |
| ZtdConfig | ZtdQuery\Config | Configuration for ZTD behavior. |
| ResultColumn | ZtdQuery\Connection | Driver-reported metadata for one result-set column. |
| ResultSet | ZtdQuery\Connection | Buffered rows together with metadata that remains available for an empty result. |
| DatabaseException | ZtdQuery\Connection\Exception | Database exception that wraps driver-specific errors. |
| ColumnAlreadyExistsException | ZtdQuery\Exception | Exception thrown when attempting to add a column that already exists. |
| ColumnNotFoundException | ZtdQuery\Exception | Exception thrown when a referenced column does not exist. |
| DuplicateKeyException | ZtdQuery\Exception | Exception thrown when a PRIMARY KEY or UNIQUE constraint is violated. |
| ForeignKeyViolationException | ZtdQuery\Exception | Exception thrown when a FOREIGN KEY constraint is violated. |
| InvalidDefinitionException | ZtdQuery\Exception | Rejects invalid lexical, schema, or expression definitions at their public boundary. |
| MissingPrimaryKeyException | ZtdQuery\Exception | Exception thrown when an UPDATE result cannot be matched to a shadow row. |
| NotNullViolationException | ZtdQuery\Exception | Exception thrown when a NOT NULL constraint is violated. |
| SchemaNotFoundException | ZtdQuery\Exception | Exception thrown when a referenced table does not exist. |
| SimulationException | ZtdQuery\Exception | Base type for failures produced by ZTD simulation rather than the driver. |
| SqlParseException | ZtdQuery\Exception | Exception thrown when SQL parsing fails due to syntax errors. |
| TableAlreadyExistsException | ZtdQuery\Exception | Exception thrown when attempting to create a table that already exists. |
| UnknownSchemaException | ZtdQuery\Exception | Exception thrown when a query references unknown tables or columns. |
| UnsupportedSqlException | ZtdQuery\Exception | Refuses a statement ZTD cannot simulate. |
| CopyTarget | ZtdQuery\Platform | What a COPY statement is written against. |
| MissingResultColumnTypeResolver | ZtdQuery\Platform | The resolver a session has when no platform gave it one. |
| InsertRowProjection | ZtdQuery\Rewrite | What one column of a rewritten INSERT ... VALUES will read back as. |
| InsertRowProjectionPlanner | ZtdQuery\Rewrite | Works out what each column of a rewritten INSERT ... VALUES reads back as. |
| InsertSelectProjection | ZtdQuery\Rewrite | The insert select projection. |
| InsertSelectProjectionPlanner | ZtdQuery\Rewrite | Works out what each column of a rewritten INSERT ... SELECT reads back as. |
| MultiRewritePlan | ZtdQuery\Rewrite | Represents the rewrite outcome for multiple SQL statements. |
| ReturningProjection | ZtdQuery\Rewrite | A dialect-neutral projection of mutation rows returned to the client. |
| RewritePlan | ZtdQuery\Rewrite | Represents the rewrite outcome for a single SQL statement. |
| ShadowIdentityAllocator | ZtdQuery\Rewrite | Hands out the identity values a database would have assigned. |
| ColumnDeclaration public API | ZtdQuery\Schema | How a column was declared: the family it belongs to, and the platform's own words for it. |
| RowSet | ZtdQuery\Schema | Immutable snapshot of rows received from a driver or fixture provider. |
| SchemaRegistry | ZtdQuery\Schema | Stores CREATE TABLE definitions keyed by table name. |
| TableDefinition | ZtdQuery\Schema | Structured representation of a table's schema metadata. |
| TableDefinitionRegistry | ZtdQuery\Schema | Stores TableDefinition instances keyed by table name. |
| ViewDefinition | ZtdQuery\Schema | One view: the statement it stands for, and what that reaches. |
| ViewDefinitionSet | ZtdQuery\Schema | The views a database has, in an order they can be created in. |
| CandidateKeyConflict | ZtdQuery\Schema\Key | Identifies the existing row and candidate key responsible for a conflict. |
| CandidateKeyMatch | ZtdQuery\Schema\Key | Reads what a row carries in a candidate key, and tells when another row repeats it. |
| CandidateKeySet | ZtdQuery\Schema\Key | Relational candidate keys used to detect INSERT conflicts. |
| ForeignKeyDefinition | ZtdQuery\Schema\Key | One foreign key: which columns point where, and what happens when the parent moves. |
| PartialUniqueIndex | ZtdQuery\Schema\Key | A unique index whose candidate rows are restricted by a SQL predicate. |
| TablePartitionKey | ZtdQuery\Schema\Partition | What a table's division into partitions is by. |
| TablePartitionRelation | ZtdQuery\Schema\Partition | What makes one table a partition of another. |
| TablePartitioning | ZtdQuery\Schema\Partition | Predicates that select rows belonging to named table partitions. |
| CascadedChildren | ZtdQuery\Shadow | The rows of one child table as a cascade leaves them. |
| FollowedConstraint | ZtdQuery\Shadow | One constraint being followed out from a parent, and what to say of it. |
| ForeignKeyCascade | ZtdQuery\Shadow | Applies to one child table what happened to its parent. |
| ForeignKeyEnds | ZtdQuery\Shadow | Answers which columns of the parent a foreign key points at. |
| ForeignKeyIntegrity | ZtdQuery\Shadow | Refuses a shadow in which some child references a parent that is not there. |
| ParentKeyLookup | ZtdQuery\Shadow | Reports whether the row a foreign key points at is still there. |
| ReferentialIntegrityEnforcer | ZtdQuery\Shadow | Carries what a statement did outward through the constraints that declare it. |
| ShadowApplication | ZtdQuery\Shadow | Writes one simulated statement into the shadow, all of it or none of it. |
| ShadowSavepoint | ZtdQuery\Shadow | Everything a transaction would have to put back, as it was at one moment. |
| ShadowStore public API | ZtdQuery\Shadow | Holds in-memory shadow rows for tables. |
| ShadowTransactions public API | ZtdQuery\Shadow | Keeps the shadow at the point each open transaction could go back to. |
| TableTransitions | ZtdQuery\Shadow | Works out what a statement did to each table, by comparing the two shadows. |
| ConflictSearch | ZtdQuery\Shadow\Mutation | Finds the row an incoming row would collide with, where a clause narrows which. |
| MutationImpact | ZtdQuery\Shadow\Mutation | Derives observable execution metadata from a shadow-state transition. |
| MutationRowIdentity | ZtdQuery\Shadow\Mutation | Carries the key a row had, alongside the key it has. |
| RowConstraints | ZtdQuery\Shadow\Mutation | Refuses a row the table would not have accepted. |
| UpsertExpression | ZtdQuery\Shadow\Mutation | A scalar expression from an UPSERT assignment, in no particular dialect. |
| UpsertMutation | ZtdQuery\Shadow\Mutation | Applies INSERT ... ON DUPLICATE KEY UPDATE (UPSERT) to the shadow store. |
| UpsertMutationRow | ZtdQuery\Shadow\Mutation | Names the columns an UPSERT carries its assignment values under. |
| UpsertUpdate | ZtdQuery\Shadow\Mutation | What an UPSERT does to a row it found a conflict on. |
| DeleteMutation | ZtdQuery\Shadow\Mutation\Row | Applies DELETE result rows to the shadow store. |
| InsertMutation | ZtdQuery\Shadow\Mutation\Row | Applies INSERT result rows to the shadow store. |
| MultiDeleteMutation | ZtdQuery\Shadow\Mutation\Row | Applies multi-table DELETE operation to the shadow store.
This mutation handles DELETE statements that target multiple tables. |
| MultiTableMutationRow | ZtdQuery\Shadow\Mutation\Row | Names the columns a multi-table statement carries its per-table values under. |
| MultiTableMutationTarget | ZtdQuery\Shadow\Mutation\Row | One table a statement writing to several of them writes to. |
| MultiUpdateMutation | ZtdQuery\Shadow\Mutation\Row | Applies multi-table UPDATE operation to the shadow store.
This mutation handles UPDATE statements that target multiple tables. |
| ReplaceMutation | ZtdQuery\Shadow\Mutation\Row | Applies REPLACE INTO operation to the shadow store.
REPLACE deletes the existing row and inserts the new one. |
| UpdateMutation | ZtdQuery\Shadow\Mutation\Row | Applies UPDATE result rows to the shadow store. |
| CreateTableAsSelectMutation | ZtdQuery\Shadow\Mutation\Table | Applies CREATE TABLE ... AS SELECT ... operation to the virtual schema.
This mutation creates a new table with structure and data from SELECT. |
| CreateTableLikeMutation | ZtdQuery\Shadow\Mutation\Table | Applies CREATE TABLE ... LIKE ... operation to the virtual schema.
This mutation copies the TableDefinition from an existing table to a new table. |
| CreateTableMutation | ZtdQuery\Shadow\Mutation\Table | Applies CREATE TABLE operation to the virtual schema.
This mutation registers a new table in the TableDefinitionRegistry. |
| DropTableMutation | ZtdQuery\Shadow\Mutation\Table | Applies DROP TABLE operation to the virtual schema.
This mutation marks a table as removed from the virtual schema and clears its rows. |
| MultiTruncateMutation | ZtdQuery\Shadow\Mutation\Table | Applies a single TRUNCATE statement to every target shadow table. |
| SynchronizeMutation | ZtdQuery\Shadow\Mutation\Table | Replaces a table with a database-evaluated complete result set. |
| TruncateMutation | ZtdQuery\Shadow\Mutation\Table | Applies TRUNCATE operation to the shadow store by clearing all rows. |
| UpsertColumn | ZtdQuery\Shadow\Mutation\Upsert | Reads a column off a row the way SQL names one. |
| UpsertComparison | ZtdQuery\Shadow\Mutation\Upsert | Compares two values the way a database does it. |
| UpsertLiteral | ZtdQuery\Shadow\Mutation\Upsert | Retains the type and identity of one expression literal. |
| UpsertNumber | ZtdQuery\Shadow\Mutation\Upsert | Does arithmetic the way a database does it, over the values a row carries. |
| UpsertOperator | ZtdQuery\Shadow\Mutation\Upsert | What one operator stands for, once its operands have been worked out. |
| UpsertTruth | ZtdQuery\Shadow\Mutation\Upsert | Answers whether a value counts as true, in SQL's three-valued logic. |
| RowChange | ZtdQuery\Shadow\Row | One row as it was, and as it became. |
| RowMatch | ZtdQuery\Shadow\Row | Finds a row among rows, by the columns that identify it. |
| RowMultiset | ZtdQuery\Shadow\Row | Rows counted with their repeats: what one set of rows has that another does not. |
| RowPairing | ZtdQuery\Shadow\Row | Which rows of a shadow before are which rows of the shadow after. |
| TableTransition | ZtdQuery\Shadow\Row | What happened to one table, as the rows themselves rather than as a count. |
| StatementSimulator | ZtdQuery\Simulator | Executes rewritten statements and applies shadow mutations for exec(). |
| LexicalDelimiters | ZtdQuery\Sql | Refuses lexical data a scanner could not use. |
| LexicalPattern | ZtdQuery\Sql | Reads a regular expression against a position in a statement. |
| SqlIdentifierComponent | ZtdQuery\Sql | Reads one part of a name out of the tokens a statement was written as. |
| SqlKeywordSequence | ZtdQuery\Sql | Finds where a run of keywords was written, at the level of the statement itself. |
| SqlLexerProfile | ZtdQuery\Sql | Everything the neutral scanner needs to know about one dialect's spelling. |
| SqlToken public API | ZtdQuery\Sql | One lexeme, with where it was written and how deeply it was nested. |
| SqlTokenScanner | ZtdQuery\Sql | Reads a statement into the lexemes it is written as, losing nothing. |
| SqlTokenStream | ZtdQuery\Sql | Lossless SQL token stream for structure-aware clause operations. |
| TransactionStatement | ZtdQuery\Sql | A structure-aware transaction-control statement. |
| SqlCommentProfile | ZtdQuery\Sql\Profile | How one dialect writes a comment. |
| SqlParameterProfile | ZtdQuery\Sql\Profile | How one dialect writes a placeholder for a value the driver will bind. |
| SqlQuoteProfile | ZtdQuery\Sql\Profile | How one dialect closes a run of text it opened with a quote. |
| SqlSymbolProfile | ZtdQuery\Sql\Profile | How one dialect spells what is written plainly. |
| SqlBlockCommentReader | ZtdQuery\Sql\Reader | Reads a block comment, opening to closing. |
| SqlDelimitedReader | ZtdQuery\Sql\Reader | Reads what a pair of delimiters closes: strings and quoted identifiers. |
| SqlLexeme | ZtdQuery\Sql\Reader | What a reader made of the statement at an offset, and where it left off. |
| SqlParameterReader | ZtdQuery\Sql\Reader | Reads a placeholder standing in for a value the driver will bind. |
| SqlTriviaReader | ZtdQuery\Sql\Reader | Reads what carries no meaning of its own: whitespace and comments. |
| SqlWordReader | ZtdQuery\Sql\Reader | Reads what is written plainly: a bare word or a number. |