|
bool const | fr_type_fixed_size [FR_TYPE_MAX+1] = FR_TYPE_FIXED_SIZE_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_integer [FR_TYPE_MAX+1] = FR_TYPE_INTEGER_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_integer_except_bool [FR_TYPE_MAX+1] = FR_TYPE_INTEGER_EXCEPT_BOOL_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_ip [FR_TYPE_MAX+1] = FR_TYPE_IP_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_leaf [FR_TYPE_MAX+1] = FR_TYPE_LEAF_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_non_leaf [FR_TYPE_MAX+1] = FR_TYPE_NON_LEAF_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_numeric [FR_TYPE_MAX+1] = FR_TYPE_NUMERIC_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_quoted [FR_TYPE_MAX+1] = FR_TYPE_QUOTED_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_signed [FR_TYPE_MAX+1] = FR_TYPE_SIGNED_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_structural [FR_TYPE_MAX+1] = FR_TYPE_STRUCTURAL_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
bool const | fr_type_structural_except_vsa [FR_TYPE_MAX+1] = FR_TYPE_STRUCTURAL_EXCEPT_VSA_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
fr_table_num_ordered_t const | fr_type_table [] |
| Map data types to names representing those types. More...
|
|
size_t | fr_type_table_len = NUM_ELEMENTS(fr_type_table) |
|
static size_t const | fr_type_to_c_size [] |
| Table of all the direct mappings between types and C type sizes. More...
|
|
static char const * | fr_type_to_c_type [] |
| Table of all the direct mappings between types and C types. More...
|
|
bool const | fr_type_variable_size [FR_TYPE_MAX+1] = FR_TYPE_VARIABLE_SIZE_DEF(ARRAY_BEG, ARRAY_MID, ARRAY_END) |
|
static const bool | type_cast_table [FR_TYPE_MAX][FR_TYPE_MAX] |
|
static const bool | type_is_number [FR_TYPE_MAX] |
|
static fr_type_t | type_promote_table [FR_TYPE_MAX][FR_TYPE_MAX] |
| promote (a,b) -> a or b a/b are not octets / string a and b are both FR_TYPE_VALUE More...
|
|
Boxed value structures and functions to manipulate them.
- Copyright
- 2021 The FreeRADIUS server project
Definition in file types.c.
Return the promoted type.
We presume that the two types are compatible, as checked by calling fr_type_cast(). The main difference here is that the two types don't have any src / dst relationship. Instead, we just pick one which best suits any value-box comparisons
Note that this function can return a type which is not a or b.
- Parameters
-
- Returns
- the promoted type
Definition at line 572 of file types.c.