include/basix/wrap.hpp File Reference
Go to the source code of this file.
Namespaces
Defines
- #define WRAP_INDIRECT_IMPL(TMPL, C)
- #define WRAP_WRAPPED_IMPL(TMPL, C)
- #define WRAP_PRINT_IMPL(TMPL, C) TMPL syntactic flatten (const C& c) { return flatten (*c); }
- #define WRAP_BINARY_IMPL(TMPL, C, R, Name, Full)
- #define WRAP_BINARY_IMPL_1(TMPL, C, R, Name, Full, A)
- #define WRAP_FIELD_IMPL(TMPL, C)
- #define WRAP_SHIFT_IMPL(TMPL, C)
- #define WRAP_COMPARE_IMPL(TMPL, C)
- #define WRAP_RING_EQUAL_IMPL(TMPL, C)
- #define WRAP_RING_COMPARE_IMPL(TMPL, C)
- #define WRAP_NUMBER_CHECK_IMPL(TMPL, C)
- #define WRAP_ELEMENTARY_IMPL(TMPL, C)
- #define WRAP_REAL_IMPL(TMPL, C)
- #define WRAP_COMPLEX_IMPL(TMPL, C, R)
Detailed Description
Definition in file wrap.hpp.
Define Documentation
#define WRAP_BINARY_IMPL |
( |
TMPL, |
|
|
C, |
|
|
R, |
|
|
Name, |
|
|
Full |
|
) |
|
Value:TMPL struct binary_helper<C >: public void_binary_helper<C > { \
static inline string short_type_name () { return Name; } \
static inline generic full_type_name () { return Full; } \
static inline generic disassemble (const C& x) { \
return as<generic> (*x); } \
static inline C assemble (const generic& x) { \
return C (as<R > (x)); } \
static inline void write (const port& out, const C& c) { \
binary_write<R > (out, *c); } \
static inline C read (const port& in) { \
return C (binary_read<R > (in)); } \
};
Definition at line 50 of file wrap.hpp.
#define WRAP_BINARY_IMPL_1 |
( |
TMPL, |
|
|
C, |
|
|
R, |
|
|
Name, |
|
|
Full, |
|
|
A |
|
) |
|
Value:TMPL struct binary_helper<C >: public void_binary_helper<C > { \
static inline string short_type_name () { \
return Name * Short_type_name (A); } \
static inline generic full_type_name () { \
return gen (Full, Full_type_name (A)); } \
static inline generic disassemble (const C& x) { \
return as<generic> (*x); } \
static inline C assemble (const generic& x) { \
return C (as<R > (x)); } \
static inline void write (const port& out, const C& c) { \
binary_write<R > (out, *c); } \
static inline C read (const port& in) { \
return C (binary_read<R > (in)); } \
};
Definition at line 64 of file wrap.hpp.
#define WRAP_COMPARE_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_COMPLEX_IMPL |
( |
TMPL, |
|
|
C, |
|
|
R |
|
) |
|
#define WRAP_ELEMENTARY_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_FIELD_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_INDIRECT_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_NUMBER_CHECK_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_PRINT_IMPL |
( |
TMPL, |
|
|
C |
|
) |
TMPL syntactic flatten (const C& c) { return flatten (*c); } |
#define WRAP_REAL_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_RING_COMPARE_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_RING_EQUAL_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_SHIFT_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
#define WRAP_WRAPPED_IMPL |
( |
TMPL, |
|
|
C |
|
) |
|
Value:TMPL nat hash (const C& c) { return hash (*c); } \
TMPL nat exact_hash (const C& c) { return exact_hash (*c); } \
TMPL nat hard_hash (const C& c) { return hard_hash (*c); } \
TMPL bool operator == (const C& c1, const C& c2) { return (*c1) == (*c2); } \
TMPL bool operator != (const C& c1, const C& c2) { return (*c1) != (*c2); } \
TMPL bool exact_eq (const C& c1, const C& c2) { return exact_eq (*c1, *c2); } \
TMPL bool exact_neq (const C& c1, const C& c2) { return exact_neq(*c1,*c2); } \
TMPL bool hard_eq (const C& c1, const C& c2) { return hard_eq (*c1, *c2); } \
TMPL bool hard_neq (const C& c1, const C& c2) { return hard_neq (*c1, *c2); }
Definition at line 32 of file wrap.hpp.