![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
Represents a (potentially interesting) ordering, rollup or (non-rollup) grouping. More...
#include <interesting_orders.h>
Public Types | |
| enum class | Kind : char { kEmpty , kOrder , kRollup , kGroup } | 
| The kind of ordering that an Ordering instance may represent.  More... | |
| using | Elements = Bounds_checked_array< OrderElement > | 
| This type hold the individual elements of the ordering.  More... | |
Public Member Functions | |
| Ordering () | |
| Ordering (Elements elements, Kind kind) | |
| Ordering (const Ordering &other) | |
| Copy constructor. Only defined explicitly to check Valid().  More... | |
| Ordering & | operator= (const Ordering &other) | 
| Assignment operator. Only defined explicitly to check Valid().  More... | |
| Ordering | Clone (MEM_ROOT *mem_root) const | 
| Make a copy of *this. Allocate new memory for m_elements from mem_root.  More... | |
| Kind | GetKind () const | 
| const Elements & | GetElements () const | 
| Elements & | GetElements () | 
| size_t | size () const | 
| void | Deduplicate () | 
| Remove duplicate entries, in-place.  More... | |
Private Member Functions | |
| bool | Valid () const | 
Private Attributes | |
| Elements | m_elements | 
| The ordering terms.  More... | |
| Kind | m_kind | 
| The kind of this ordering.  More... | |
Friends | |
| bool | operator== (const Ordering &a, const Ordering &b) | 
| Check if 'a' and 'b' has the same kind and contains the same elements.  More... | |
Represents a (potentially interesting) ordering, rollup or (non-rollup) grouping.
This type hold the individual elements of the ordering.
      
  | 
  strong | 
The kind of ordering that an Ordering instance may represent.
      
  | 
  inline | 
      
  | 
  inline | 
Copy constructor. Only defined explicitly to check Valid().
Make a copy of *this. Allocate new memory for m_elements from mem_root.
| void Ordering::Deduplicate | ( | ) | 
Remove duplicate entries, in-place.
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Assignment operator. Only defined explicitly to check Valid().
      
  | 
  inline | 
      
  | 
  private | 
Check if 'a' and 'b' has the same kind and contains the same elements.
      
  | 
  private | 
The ordering terms.
      
  | 
  private | 
The kind of this ordering.