10 #define __AFW_FLAG_H__
29 #define AFW_FLAG_INITIAL_ALLOCATED_COUNT 64
84 #define afw_flag_is_active(flag_index, xctx) \
85 ((flag_index) < (xctx)->flags_count && (xctx)->flags[flag_index])
226 afw_flag_internal_early_register_core(
afw_xctx_t *xctx);
#define AFW_BEGIN_DECLARES
#define AFW_DECLARE_INTERNAL(type)
Declare an internal function for /src/afw/ source*.h files.
#define AFW_DECLARE(type)
Declare a public afw function.
Interfaceafw_interface header.
apr_size_t afw_size_t
size_t.
afw_boolean_t afw_flag_by_id_is_active(const afw_utf8_t *flag_id, afw_xctx_t *xctx)
Determine if flag for flag id is set in xctx.
void afw_flag_set_default(const afw_utf8_t *flag_id, afw_boolean_t set_to, afw_xctx_t *xctx)
Set the default value of a flag.
void afw_flag_set_to_defaults_plus_array(const afw_utf8_t *const *flag_ids, afw_xctx_t *xctx)
Set xctx default flags plus one or more additional flags.
const afw_flag_t * afw_flag_get_by_index(afw_size_t flag_index, afw_xctx_t *xctx)
Get flag by index.
void afw_flag_set_default_flag_ids(const afw_list_t *default_flag_ids, afw_xctx_t *xctx)
Set a new default flags list.
void afw_flag_set(const afw_utf8_t *flag_id, afw_boolean_t set_to, afw_xctx_t *xctx)
Set a flag in xctx.
void afw_flag_environment_register_flag(const afw_utf8_t *flag_id, const afw_utf8_t *brief, const afw_utf8_t *description, const afw_utf8_t *included_by_flag_id, afw_xctx_t *xctx)
Register a flag definition.
afw_size_t afw_flag_get_index(const afw_utf8_t *flag_id, afw_xctx_t *xctx)
Get the flag index for a flag id.
void afw_flag_add_included_by(const afw_utf8_t *flag_id, const afw_utf8_t *included_by_flag_id, afw_xctx_t *xctx)
Add another include_by flag to a registered flag.
Struct used for a registered flag.
const afw_object_t * object
runtime object for this flag.
const afw_value_list_t * included_by_value
list value of all flags that include this flag.
const afw_value_t * flag_id_value
sting value of objectId of this flag.
const afw_boolean_t * applicable_flags
Applicable flags indexed by associated flag_index.
const afw_utf8_t * description
Description of this flag.
const afw_utf8_t * flag_id
objectId of this flag.
const afw_utf8_t * brief
Brief predicate about this flag.
const afw_flag_t * parent
Pointer to direct parent afw_flag_t.
afw_size_t flag_index
Index of this flag in flags array.
const afw_value_list_t * includes_value
list value of all other flags this flag includes.
afw_size_t applicable_flags_count_allocated
Count of applicable_flags.
const afw_value_t * object_value
object value for runtime object.
Interface afw_list public struct.
Interface afw_object public struct.
NFC normalized UTF-8 string.
struct for data type list values.
Interface afw_value public struct.
Interface afw_xctx public struct.