Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Files | Data Structures | Macros | Typedefs | Enumerations | Functions

Files

file  afw_value_internal.h
 Internal header for afw_value*.
 

Data Structures

struct  afw_value_annotated_s
 Struct for annotated value. More...
 
struct  afw_value_assignment_target_s
 Struct for assignment target value. More...
 
struct  afw_value_assignment_s
 Struct for value assignment. More...
 
struct  afw_value_block_s
 struct for afw_value_block_t More...
 
struct  afw_value_block_frame_s
 struct for afw_value_block_frame_t More...
 
struct  afw_value_type_s
 Type meta (data type, data type parameters, and value meta object. More...
 
struct  afw_value_type_list_s
 Type for list. More...
 
struct  afw_value_block_symbol_s
 struct for afw_value_block_symbol_t More...
 
struct  afw_value_call_args_s
 Struct for contextual and args for call values. More...
 
struct  afw_value_call_s
 Struct for call value. More...
 
struct  afw_value_call_built_in_function_s
 Struct for call value. More...
 
struct  afw_value_internal_compiled_value_s
 Struct for compiled value value. More...
 
struct  afw_value_list_expression_s
 struct for list expression value. More...
 
struct  afw_value_function_thunk_s
 Struct for function thunk value. More...
 
struct  afw_value_object_expression_s
 struct for object expression value. More...
 
struct  afw_value_reference_by_key_s
 Struct for reference_by_key value. More...
 
struct  afw_value_expression_definition_s
 Struct for expression value. More...
 
struct  afw_value_script_function_signature_s
 Struct for lambda parameter. More...
 
struct  afw_value_script_function_parameter_s
 Struct for script function parameter. More...
 
struct  afw_value_script_function_definition_s
 Struct for lambda value. More...
 
struct  afw_value_qualified_variable_reference_s
 Struct for qualified variable reference value. More...
 
struct  afw_value_template_definition_s
 Struct for template value. More...
 
struct  afw_value_variable_reference_s
 
struct  afw_value_meta_object_self_s
 
struct  afw_value_meta_values_object_list_self_s
 
struct  afw_value_meta_values_list_list_self_s
 
struct  afw_value_meta_name_handler_t
 
struct  afw_value_compiler_listing_s
 

Macros

#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_NONE   0
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_ASSIGN   1
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_BREAK   2
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_CONST   3
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_CONTINUE   4
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_DO_WHILE   5
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_FOR   6
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_FOREACH   7
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_IF   8
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_LOC   9
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_RETURN   10
 
#define AFW_VALUE_SCRIPT_SUPPORT_NUMBER_WHILE   11
 
#define AFW_VALUE_COMPILER_LISTING_IF_NOT_LIMIT_EXCEEDED
 

Typedefs

typedef struct afw_value_meta_object_self_s afw_value_meta_object_self_t
 
typedef struct afw_value_meta_values_object_list_self_s afw_value_meta_values_object_list_self_t
 
typedef struct afw_value_meta_values_list_list_self_s afw_value_meta_values_list_list_self_t
 
typedef const afw_value_t *(* afw_value_meta_special_get_t) (afw_value_meta_object_self_t *self, const afw_utf8_t *property_name, afw_xctx_t *xctx)
 
typedef void(* afw_value_meta_special_set_t) (afw_value_meta_object_self_t *self, const afw_utf8_t *property_name, const afw_value_t *value, afw_xctx_t *xctx)
 

Enumerations

enum  afw_value_block_statement_type_t { afw_value_block_statement_type_sequential , afw_value_block_statement_type_break , afw_value_block_statement_type_continue , afw_value_block_statement_type_return }
 

Functions

 afw_value_call_built_in_function (const afw_compile_value_contextual_t *contextual, const afw_value_function_definition_t *function, afw_size_t argc, const afw_value_t *const *argv, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_create_meta_object_self (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_meta_default (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_metas_default (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_meta_for_list (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_metas_for_list (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_meta_for_object (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_internal_get_evaluated_metas_for_object (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_meta_values_list_for_object_create (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_meta_values_list_for_list_create (const afw_value_t *value, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_to_string_instance (const afw_value_t *value, afw_value_compiler_listing_t *parent, const afw_utf8_t *tab, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_for_child (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_begin_value (const afw_writer_t *writer, const afw_value_t *value, const afw_compile_value_contextual_t *contextual, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_end_value (const afw_writer_t *writer, const afw_value_t *value, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_call_args (const afw_writer_t *writer, const afw_value_call_args_t *args, afw_xctx_t *xctx)
 
 afw_value_compiler_listing_value (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_statement (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_boolean_t allow_return, afw_boolean_t is_loop, const afw_value_t *block, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_block (afw_function_execute_t *x, afw_value_block_statement_type_t *type, const afw_value_block_t *self, afw_boolean_t is_loop, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_for (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_size_t argc, const afw_value_t *const *argv, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_foreach (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_size_t argc, const afw_value_t *const *argv, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_do_while (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_size_t argc, const afw_value_t *const *argv, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_if (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_size_t argc, const afw_value_t *const *argv, afw_boolean_t is_loop, const afw_pool_t *p, afw_xctx_t *xctx)
 
 afw_value_block_evaluate_while (afw_function_execute_t *x, afw_value_block_statement_type_t *type, afw_size_t argc, const afw_value_t *const *argv, const afw_pool_t *p, afw_xctx_t *xctx)
 

Detailed Description

Adaptive Framework Value internal API.

Macro Definition Documentation

◆ AFW_VALUE_COMPILER_LISTING_IF_NOT_LIMIT_EXCEEDED

#define AFW_VALUE_COMPILER_LISTING_IF_NOT_LIMIT_EXCEEDED
Value:
if (writer->indent > xctx->env->evaluation_stack_maximum_count) { \
afw_writer_write_z(writer, ">>> Limit exceeded", xctx); \
afw_writer_write_eol(writer, xctx); \
} \
else

Definition at line 45 of file afw_value_internal.h.

Function Documentation

◆ afw_value_block_evaluate_statement()

afw_value_block_evaluate_statement ( afw_function_execute_t x,
afw_value_block_statement_type_t *  type,
afw_boolean_t  allow_return,
afw_boolean_t  is_loop,
const afw_value_t block,
const afw_pool_t p,
afw_xctx_t xctx 
)
Todo:
this is temporary.
Todo:
FIXME: process type.

Definition at line 738 of file afw_value_block.c.

◆ afw_value_compiler_listing_to_string_instance()

afw_value_compiler_listing_to_string_instance ( const afw_value_t value,
afw_value_compiler_listing_t parent,
const afw_utf8_t tab,
const afw_pool_t p,
afw_xctx_t xctx 
)
Todo:
make these an option

Definition at line 382 of file afw_value_compiler_listing.c.