Class TypeMap
Implements default and single-use mappings for columns to their associated types
Properties summary
-
$_defaults
protectedstring[]
Associative array with the default fields and the related types this query might contain. -
$_types
protectedstring[]
Associative array with the fields and the related types that override defaults this query might contain
Method Summary
-
__construct() public
Creates an instance with the given defaults -
addDefaults() public
Add additional default types into the type map. -
defaults() public deprecated
Configures a map of default fields and their associated types to be used as the default list of types for every function in this class with a $types param. Useful to avoid repetition when calling the same functions using the same fields and types.
-
getDefaults() public
Returns the currently configured types. -
getTypes() public
Gets a map of fields and their associated types for single-use. -
setDefaults() public
Configures a map of fields and associated type. -
setTypes() public
Sets a map of fields and their associated types for single-use. -
toArray() public
Returns an array of all types mapped types -
type() public
Returns the type of the given column. If there is no single use type is configured, the column type will be looked for inside the default mapping. If neither exist, null will be returned.
-
types() public deprecated
Sets a map of fields and their associated types for single-use.
Method Detail
__construct() public ¶
__construct( array $defaults = [] )
Creates an instance with the given defaults
Parameters
- array $defaults optional []
- The defaults to use.
addDefaults() public ¶
addDefaults( array $types )
Add additional default types into the type map.
If a key already exists it will not be overwritten.
Parameters
- array $types
- The additional types to add.
defaults() public deprecated ¶
defaults( array $defaults = null )
Configures a map of default fields and their associated types to be used as the default list of types for every function in this class with a $types param. Useful to avoid repetition when calling the same functions using the same fields and types.
If called with no arguments it will return the currently configured types.
Example
$query->defaults(['created' => 'datetime', 'is_visible' => 'boolean']);
This method will replace all the existing default mappings with the ones provided. To add into the mappings use addDefaults()
Deprecated
Parameters
- array $defaults optional null
associative array where keys are field names and values are the correspondent type.
Returns
$this|array
getTypes() public ¶
getTypes( )
Gets a map of fields and their associated types for single-use.
Returns
setDefaults() public ¶
setDefaults( array $defaults )
Configures a map of fields and associated type.
These values will be used as the default mapping of types for every function
in this instance that supports a $types
param.
This method is useful when you want to avoid repeating type definitions as setting types overwrites the last set of types.
Example
$query->setDefaults(['created' => 'datetime', 'is_visible' => 'boolean']);
This method will replace all the existing default mappings with the ones provided.
To add into the mappings use addDefaults()
.
Parameters
- array $defaults
Associative array where keys are field names and values are the correspondent type.
Returns
$this
setTypes() public ¶
setTypes( array $types )
Sets a map of fields and their associated types for single-use.
Example
$query->setTypes(['created' => 'time']);
This method will replace all the existing type maps with the ones provided.
Parameters
- array $types
Associative array where keys are field names and values are the correspondent type.
Returns
$this
type() public ¶
type( string $column )
Returns the type of the given column. If there is no single use type is configured, the column type will be looked for inside the default mapping. If neither exist, null will be returned.
Parameters
- string $column
- The type for a given column
Returns
types() public deprecated ¶
types( array $types = null )
Sets a map of fields and their associated types for single-use.
If called with no arguments it will return the currently configured types.
Example
$query->types(['created' => 'time']);
This method will replace all the existing type maps with the ones provided.
Deprecated
Parameters
- array $types optional null
associative array where keys are field names and values are the correspondent type.
Returns
$this|array
Properties detail
$_defaults ¶
Associative array with the default fields and the related types this query might contain.
Used to avoid repetition when calling multiple functions inside this class that may require a custom type for a specific field.