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

Files

file  afw_value_impl_declares.h
 Interface afw_interface implementation declares.
 

Macros

#define __AFW_VALUE_IMPL_DECLARES_H__   1
 
#define _AFW_IMPLEMENTATION_ID_   "unspecified"
 
#define _AFW_IMPLEMENTATION_SPECIFIC_   NULL
 
#define _AFW_IMPLEMENTATION_SOURCE_FILE_   __FILE__
 

Functions

 impl_afw_value_optional_release (const afw_value_t *instance, afw_xctx_t *xctx)
 
 impl_afw_value_get_reference (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_optional_evaluate (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_get_data_type (const afw_value_t *instance, afw_xctx_t *xctx)
 
 impl_afw_value_get_evaluated_data_type (const afw_value_t *instance, afw_xctx_t *xctx)
 
 impl_afw_value_get_evaluated_data_type_parameter (const afw_value_t *instance, afw_xctx_t *xctx)
 
 impl_afw_value_get_evaluated_meta (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_get_evaluated_metas (const afw_value_t *instance, const afw_pool_t *p, afw_xctx_t *xctx)
 
 impl_afw_value_produce_compiler_listing (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
 impl_afw_value_decompile (const afw_value_t *instance, const afw_writer_t *writer, afw_xctx_t *xctx)
 
 impl_afw_value_get_info (const afw_value_t *instance, afw_value_info_t *info, const afw_pool_t *p, afw_xctx_t *xctx)
 

Detailed Description

This file should only be included in c source files that implement interface afw_value.

You can find a skeleton for using this #include file in the corresponding source directory in file generated/interface_closet/skeleton_afw_value.c.

Mutiple *_impl.declares.h can be included in each c source file, but only one for each interface name.

After the #include for afw_value_impl_declares.h:

  1. declarations will exist for all of the interfaces methods with names of impl_afw_value_ followed by the method name.
  2. rti will be defined with a name of impl_afw_value_rti.
  3. inf will be defined with a name of impl_afw_value_inf.

Before including, define the following symbols:

Example:

static const sometype_t impl_myimpl_stuff = {
...
};
#define AFW_IMPLEMENTATION_ID "myimpl"
#define AFW_IMPLEMENTATION_SPECIFIC &impl_myimpl_stuff
A second #include "afw_value_impl_declares.h" can be specified if
" * #define "AFW_VALUE_INF_ONLY" is specified to generate inf only."
Interface afw_interface implementation declares.

Function Documentation

◆ impl_afw_value_get_evaluated_meta()

impl_afw_value_get_evaluated_meta ( const afw_value_t instance,
const afw_pool_t p,
afw_xctx_t xctx 
)
Todo:
Add code to implement method.

Definition at line 128 of file afw_value_assignment_target.c.

◆ impl_afw_value_optional_evaluate()

impl_afw_value_optional_evaluate ( const afw_value_t instance,
const afw_pool_t p,
afw_xctx_t xctx 
)
Todo:
FIXME: Add code to adjust based on annotation.
Todo:
temporary

Definition at line 75 of file afw_value_annotated.c.