static void arg_node_fprintf(const arg_node_type * node , FILE * stream) { switch (node->ctype) { case(CTYPE_INT_VALUE): fprintf(stream , "int:%d",arg_node_get_int(node)); break; case(CTYPE_DOUBLE_VALUE): fprintf(stream , "double:%g",arg_node_get_double(node)); break; case(CTYPE_VOID_POINTER): fprintf(stream , "pointer:<%p>",arg_node_get_ptr( node , true )); break; case(CTYPE_BOOL_VALUE): fprintf(stream , "bool:%d", arg_node_get_bool( node )); break; default: util_abort("%s: - not implemented for type:%d \n",__func__ , node->ctype); } }
void * arg_pack_iget_adress(const arg_pack_type * arg , int iarg) { __arg_pack_assert_index(arg , iarg); return arg_node_get_ptr(arg->nodes[iarg] , false); }
const void * arg_pack_iget_const_ptr(const arg_pack_type * arg , int iarg) { __arg_pack_assert_index(arg , iarg); return arg_node_get_ptr(arg->nodes[iarg] , true); }