Beispiel #1
0
 /**
  * Builds the type map
  *
  * @param \Cake\Database\TypeMap $typeMap Contains the types to use for converting results
  * @param \Cake\Database\Driver $driver The driver to use for the type conversion
  */
 public function __construct(TypeMap $typeMap, Driver $driver)
 {
     $this->_driver = $driver;
     $map = $typeMap->toArray();
     $types = Type::buildAll();
     $result = [];
     foreach ($types as $k => $type) {
         if ($type instanceof OptionalConvertInterface && !$type->requiresToPhpCast()) {
             unset($types[$k]);
         }
     }
     foreach ($map as $field => $type) {
         if (isset($types[$type])) {
             $result[$field] = $types[$type];
         }
     }
     $this->_typeMap = $result;
 }