original_string: public function orderDesc($field, $overwrite = false)
      {
          if ($overwrite) {
              $this->_parts['order'] = null;
          }
          if (!$field) {
              return $this;
          }
  
          if (!$this->_parts['order']) {
              $this->_parts['order'] = new OrderByExpression();
          }
          $this->_parts['order']->add(new OrderClauseExpression($field, 'DESC'));
  
          return $this;
      }
code: public function orderDesc($field, $overwrite = false)
      {
          if ($overwrite) {
              $this->_parts['order'] = null;
          }
          if (!$field) {
              return $this;
          }
  
          if (!$this->_parts['order']) {
              $this->_parts['order'] = new OrderByExpression();
          }
          $this->_parts['order']->add(new OrderClauseExpression($field, 'DESC'));
  
          return $this;
      }
code_tokens: public function orderDesc ( $ field , $ overwrite = false ) { if ( $ overwrite ) { $ this -> _parts [ 'order' ] = null ; } if ( ! $ field ) { return $ this ; } if ( ! $ this -> _parts [ 'order' ] ) { $ this -> _parts [ 'order' ] = new OrderByExpression ( ) ; } $ this -> _parts [ 'order' ] -> add ( new OrderClauseExpression ( $ field , 'DESC' ) ) ; return $ this ; }
docstring: Add an ORDER BY clause with a DESC direction.
  
  This method allows you to set complex expressions
  as order conditions unlike order()
  
  Order fields are not suitable for use with user supplied data as they are
  not sanitized by the query builder.
  
  @param string|\Cake\Database\Expression\QueryExpression $field The field to order on.
  @param bool $overwrite Whether or not to reset the order clauses.
  @return $this
docstring_tokens: Add an ORDER BY clause with a DESC direction .