original_string: public function addDefaultTypes(Table $table)
      {
          $alias = $table->getAlias();
          $map = $table->getSchema()->typeMap();
          $fields = [];
          foreach ($map as $f => $type) {
              $fields[$f] = $fields[$alias . '.' . $f] = $fields[$alias . '__' . $f] = $type;
          }
          $this->getTypeMap()->addDefaults($fields);
  
          return $this;
      }
code: public function addDefaultTypes(Table $table)
      {
          $alias = $table->getAlias();
          $map = $table->getSchema()->typeMap();
          $fields = [];
          foreach ($map as $f => $type) {
              $fields[$f] = $fields[$alias . '.' . $f] = $fields[$alias . '__' . $f] = $type;
          }
          $this->getTypeMap()->addDefaults($fields);
  
          return $this;
      }
code_tokens: public function addDefaultTypes ( Table $ table ) { $ alias = $ table -> getAlias ( ) ; $ map = $ table -> getSchema ( ) -> typeMap ( ) ; $ fields = [ ] ; foreach ( $ map as $ f => $ type ) { $ fields [ $ f ] = $ fields [ $ alias . '.' . $ f ] = $ fields [ $ alias . '__' . $ f ] = $ type ; } $ this -> getTypeMap ( ) -> addDefaults ( $ fields ) ; return $ this ; }
docstring: Hints this object to associate the correct types when casting conditions
  for the database. This is done by extracting the field types from the schema
  associated to the passed table object. This prevents the user from repeating
  themselves when specifying conditions.
  
  This method returns the same query object for chaining.
  
  @param \Cake\ORM\Table $table The table to pull types from
  @return $this
docstring_tokens: Hints this object to associate the correct types when casting conditions for the database . This is done by extracting the field types from the schema associated to the passed table object . This prevents the user from repeating themselves when specifying conditions .