blob: 2bc4d8c9ec89e2b73eaf1d7c8d6803aee17cb032 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#ifndef ALGDS_BAISC_TRAITS_H_
#define ALGDS_BAISC_TRAITS_H_
#include "type_alias.h"
// basic traits
#define BASIC_TRAITS_DEF(T) \
Bool T##_eq(T* lhs, T* rhs); \
Int T##_cmp(T* lhs, T* rhs); \
ULong T##_hash(T* x);
BASIC_TRAITS_DEF(Int);
BASIC_TRAITS_DEF(Bool);
BASIC_TRAITS_DEF(Long);
BASIC_TRAITS_DEF(Char);
BASIC_TRAITS_DEF(UInt);
BASIC_TRAITS_DEF(ULong);
BASIC_TRAITS_DEF(Double);
BASIC_TRAITS_DEF(Float);
BASIC_TRAITS_DEF(String);
#endif
|