Evo C++ Library v0.5.1
Public Types | Public Member Functions | List of all members
CompareBase< T > Struct Template Referenceabstract

#include <evo/impl/container.h>

Inheritance diagram for CompareBase< T >:
Inheritance graph
[legend]

Detailed Description

template<class T>
struct evo::CompareBase< T >

Base type for comparison types.

Public Types

typedef RemoveConst< T >::Type Item
 Item type (const removed) More...
 
typedef DataCopy< T >::PassType PassItem
 Best type for passing Item, either const Item& (by reference) or Item (by value) for POD types. More...
 

Public Member Functions

virtual int operator() (PassItem a, PassItem b) const =0
 Comparison method. More...
 

Member Typedef Documentation

◆ Item

typedef RemoveConst<T>::Type Item
inherited

Item type (const removed)

◆ PassItem

typedef DataCopy<T>::PassType PassItem

Best type for passing Item, either const Item& (by reference) or Item (by value) for POD types.

Member Function Documentation

◆ operator()()

virtual int operator() ( PassItem  a,
PassItem  b 
) const
pure virtual

Comparison method.

Parameters
aItem a to compare (left side)
bItem b to compare (right side)
Returns
Comparison result: 0:equal, negative:(a < b), positive:(a > b)

Implemented in CompareIR< T >, CompareI< T >, CompareR< T >, and Compare< T >.


The documentation for this struct was generated from the following file: