Exposes the methods for storing the associations that should be eager loaded for a table once a query is provided and delegates the job of creating the required joins and decorating the results so that those associations can be part of the result set.
Extends the base Query class to provide new methods related to association loading, automatic fields selection, automatic type casting and to wrap results into a specific iterator that will be responsible for hydrating results if required.
Base class for behaviors.
An Association is a relationship established between two tables and is used to configure and customize the way interconnected records are retrieved.
Provides a registry/factory for Table objects.
BehaviorRegistry is used as a registry for loaded behaviors and handles loading and constructing behavior objects.
Represents the results obtained after executing a query for a specific table This object is responsible for correctly nesting result keys reported from the query, casting each field to the correct type and executing the extra queries required for eager loading external associations.
OOP style Save Option Builder.
A container/collection for association classes.
Contains methods that are capable of injecting eagerly loaded associations into entities or lists of entities by using the same syntax as the EagerLoader.
Represents a single database table.
Contains logic to convert array data into entities.
An entity represents a single result row from a repository. It exposes the methods for retrieving and storing properties associated in this row.
ORM flavoured rules checker.
Represents a single level in the associations tree to be eagerly loaded for a specific query. This contains all the information required to fetch the results from the database from an associations and all its children levels.
Behaviors implementing this interface can participate in entity marshalling.
Contains methods for parsing the associated tables array that is typically passed to a save operation