Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Macros | Functions | Variables
afw_data_type_integer_binding.c File Reference

Adaptive Framework core data types. More...

#include "afw.h"
#include "afw_runtime_object_maps.h"
#include "afw_value_internal.h"
#include "afw_value_impl_declares.h"

Go to the source code of this file.

Macros

#define impl_afw_value_get_evaluated_meta    afw_value_internal_get_evaluated_meta_default
 
#define impl_afw_value_get_evaluated_metas    afw_value_internal_get_evaluated_metas_default
 
#define impl_afw_value_optional_evaluate   NULL
 
#define AFW_IMPLEMENTATION_SPECIFIC   (const void *)&afw_data_type_integer_direct
 
#define AFW_IMPLEMENTATION_INF_VARIABLES
 
#define AFW_IMPLEMENTATION_ID   "integer"
 
#define AFW_IMPLEMENTATION_INF_SPECIFIER   AFW_DEFINE_CONST_DATA
 
#define AFW_IMPLEMENTATION_INF_LABEL   afw_value_evaluated_integer_inf
 
#define impl_afw_value_optional_release   NULL
 
#define impl_afw_value_get_reference   impl_afw_value_unmanaged_get_reference
 
#define AFW_IMPLEMENTATION_ID   "managed_integer"
 
#define AFW_IMPLEMENTATION_INF_LABEL   afw_value_managed_integer_inf
 
#define impl_afw_value_optional_release   impl_afw_value_managed_optional_release
 
#define impl_afw_value_get_reference   impl_afw_value_managed_get_reference
 
#define AFW_VALUE_INF_ONLY   1
 
#define AFW_IMPLEMENTATION_ID   "permanent_integer"
 
#define AFW_IMPLEMENTATION_INF_LABEL   afw_value_permanent_integer_inf
 
#define impl_afw_value_optional_release   NULL
 
#define impl_afw_value_get_reference   impl_afw_value_permanent_get_reference
 
#define AFW_VALUE_INF_ONLY   1
 

Functions

 impl_afw_value_managed_optional_release (const afw_value_t *instance, afw_xctx_t *xctx)
 
 impl_afw_value_unmanaged_get_reference (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_managed_get_reference (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_permanent_get_reference (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_object_set_property_as_integer (const afw_object_t *object, const afw_utf8_t *property_name, afw_integer_t internal, afw_xctx_t *xctx)
 Set property function for data type integer values. More...
 
 afw_value_as_integer (const afw_value_t *value, afw_xctx_t *xctx)
 Typesafe cast of data type integer. More...
 
 afw_value_allocate_integer (const afw_pool_t *p, afw_xctx_t *xctx)
 Allocate function for unmanaged data type integer value. More...
 
 afw_value_create_integer (afw_integer_t internal, const afw_pool_t *p, afw_xctx_t *xctx)
 Create function for unmanaged data type integer value. More...
 
 afw_value_allocate_managed_integer (const afw_pool_t *p, afw_xctx_t *xctx)
 Allocate function for managed data type integer value. More...
 
 afw_value_create_managed_integer (afw_integer_t internal, const afw_pool_t *p, afw_xctx_t *xctx)
 Create function for managed data type integer value. More...
 
 afw_value_allocate_permanent_integer (const afw_pool_t *p, afw_xctx_t *xctx)
 Allocate function for permanent data type integer value. More...
 
 afw_value_create_permanent_integer (afw_integer_t internal, const afw_pool_t *p, afw_xctx_t *xctx)
 Create function for permanent data type integer value. More...
 
 afw_data_type_integer_to_internal (afw_integer_t *to_internal, const afw_utf8_t *from_utf8, const afw_pool_t *p, afw_xctx_t *xctx)
 Convert data type integer string to afw_integer_t *. More...
 
 afw_data_type_integer_to_utf8 (afw_integer_t internal, const afw_pool_t *p, afw_xctx_t *xctx)
 Convert data type integer internal representation to utf-8. More...
 
 afw_object_get_property_as_integer_source (const afw_object_t *object, const afw_utf8_t *property_name, afw_boolean_t *found, const afw_utf8_z_t *source_z, const afw_pool_t *p, afw_xctx_t *xctx)
 Get property function for data type integer value. More...
 
 afw_object_get_next_property_as_integer_source (const afw_object_t *object, const afw_iterator_t **iterator, const afw_utf8_t **property_name, afw_boolean_t *found, const afw_utf8_z_t *source_z, const afw_pool_t *p, afw_xctx_t *xctx)
 Get property function for data type integer value. More...
 
const afw_data_type_timpl_afw_value_get_data_type (const afw_value_t *instance, afw_xctx_t *xctx)
 
const afw_data_type_timpl_afw_value_get_evaluated_data_type (const afw_value_t *instance, afw_xctx_t *xctx)
 
const afw_utf8_timpl_afw_value_get_evaluated_data_type_parameter (const afw_value_t *instance, afw_xctx_t *xctx)
 
void impl_afw_value_produce_compiler_listing (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
void impl_afw_value_decompile (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
void impl_afw_value_get_info (const afw_value_t *instance, afw_value_info_t *info, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_list_of_integer_get_next_source (const afw_list_t *instance, const afw_iterator_t **iterator, afw_boolean_t *found, const afw_utf8_z_t *source_z, afw_xctx_t *xctx)
 Get next value from list of integer. More...
 
 afw_list_of_integer_add (const afw_list_t *instance, const afw_integer_t *value, afw_xctx_t *xctx)
 Add value from list of integer. More...
 
 afw_list_of_integer_remove (const afw_list_t *instance, const afw_integer_t *value, afw_xctx_t *xctx)
 Remove value from list of integer. More...
 

Variables

 afw_data_type_integer_id_value
 
 impl_empty_list_of_integer
 
 impl_value_empty_list_of_integer
 
 afw_data_type_integer_direct
 
 afw_data_type_integer
 

Detailed Description

Adaptive Framework core data types.

Definition in file afw_data_type_integer_binding.c.

Macro Definition Documentation

◆ AFW_IMPLEMENTATION_INF_VARIABLES

#define AFW_IMPLEMENTATION_INF_VARIABLES
Value:
(const void *)&afw_data_type_integer_direct, \
afw_data_type_integer_direct
extern for data type integer struct.

Definition at line 73 of file afw_data_type_integer_binding.c.

Function Documentation

◆ impl_afw_value_managed_optional_release()

impl_afw_value_managed_optional_release ( const afw_value_t instance,
afw_xctx_t xctx 
)
Todo:
this needs to release reference of value or free it.

Definition at line 412 of file afw_data_type_integer_binding.c.

◆ impl_afw_value_unmanaged_get_reference()

impl_afw_value_unmanaged_get_reference ( const afw_value_t instance,
const afw_pool_t p,
afw_xctx_t xctx 
)
Todo:
this needs to addref or return a copy.

Definition at line 421 of file afw_data_type_integer_binding.c.

Variable Documentation

◆ afw_data_type_integer

afw_data_type_integer
Initial value:

Definition at line 205 of file afw_data_type_integer_binding.c.

◆ afw_data_type_integer_direct

afw_data_type_integer_direct
Initial value:
= {
(const afw_object_t *)&impl_data_type_object_integer,
AFW_UTF8_LITERAL("integer"),
AFW_UTF8_LITERAL("An integer"),
AFW_UTF8_LITERAL("Data type integer hold a positive or negative whole numbers. The string value of a negative integer is preceded with a minus sign ('-'). A positive integer is displayed without a sign but can optionally be preceded by a plus sign ('+') on input."),
afw_data_type_number_integer,
AFW_UTF8_LITERAL("1.3.6.1.4.1.1466.115.121.1.27"),
AFW_UTF8_LITERAL("number"),
AFW_UTF8_LITERAL("afw_integer_t"),
sizeof(afw_integer_t),
(const afw_list_t *)&impl_empty_list_of_integer,
(const afw_value_t *)&impl_value_empty_list_of_integer,
afw_compile_type_error,
true,
false,
true,
true,
true
}
afw_value_evaluated_integer_inf
Unmanaged evaluated value inf for data type integer.
afw_data_type_integer_inf
extern for data type integer inf.
#define AFW_UTF8_LITERAL(A_STRING)
String literal initializer.
Definition: afw_common.h:582
apr_int64_t afw_integer_t
typedef for big signed int.
Definition: afw_common.h:321
Interface afw_list public struct.
Interface afw_object public struct.
Interface afw_value public struct.

Definition at line 164 of file afw_data_type_integer_binding.c.

◆ afw_data_type_integer_id_value

afw_data_type_integer_id_value
Initial value:
=
{
(const afw_value_t *)&impl_data_type_integer_id_value
}

Definition at line 128 of file afw_data_type_integer_binding.c.

◆ impl_empty_list_of_integer

impl_empty_list_of_integer
Initial value:
= {
0
}
afw_list_wrapper_for_array_inf
inf for afw_list_wrapper_for_array afw_list implementation.
Definition: afw_list.h:254

Definition at line 156 of file afw_data_type_integer_binding.c.

◆ impl_value_empty_list_of_integer

impl_value_empty_list_of_integer
Initial value:
= {
(const afw_list_t *)&impl_empty_list_of_integer
}
afw_value_permanent_list_inf
Permanent managed (life of afw environment) value inf for data type list.

Definition at line 160 of file afw_data_type_integer_binding.c.