VSF Documented
Macros | Typedefs | Functions
vsf_pikapython.h File Reference
#include "PikaObj.h"
#include "TinyObj.h"
#include "PikaStdData_List.h"
#include "PikaStdData_Dict.h"
#include "PikaStdData_Tuple.h"
#include "PikaStdData_FILEIO.h"

Go to the source code of this file.

Macros

#define VSF_PYAL_FEATURE_FUNCARG_NUM_CHECK   1
 
#define VSF_PYAL_FEATURE_MODULE_IS_DYN   1
 
#define VSF_PYAL_ARG_NULL   NULL
 
#define vsf_pyal_newarg_obj(__obj)   arg_newObj(__obj)
 
#define vsf_pyal_arg_is_int(__arg)   (arg_getType(__arg) == ARG_TYPE_INT)
 
#define vsf_pyal_arg_is_float(__arg)   (arg_getType(__arg) == ARG_TYPE_FLOAT)
 
#define vsf_pyal_arg_is_str(__arg)   (arg_getType(__arg) == ARG_TYPE_STRING)
 
#define vsf_pyal_arg_is_bool(__arg)   (arg_getType(__arg) == ARG_TYPE_BOOL)
 
#define vsf_pyal_arg_is_list(__arg)   arg_isList(__arg)
 
#define vsf_pyal_arg_is_tuple(__arg)   arg_isTuple(__arg)
 
#define vsf_pyal_arg_is_callable(__arg)   arg_isCallable(__arg)
 
#define vsf_pyal_arg_is_iterable(__arg)   arg_isIterable(__arg)
 
#define vsf_pyal_arg_is_class(__arg, __mod, __class)    (vsf_pyal_arg_getobj(__arg)->constructor == New_ ## __mod ## _ ## __class)
 
#define vsf_pyal_arg_getobj(__arg)   arg_getObj(__arg)
 
#define vsf_pyal_arg_free(__arg)   arg_deinit(__arg)
 
#define vsf_pyal_arg_iter(__arg, ...)
 
#define vsf_pyal_intvalue_t   int64_t
 
#define vsf_pyal_newarg_int(__value)   arg_newInt(__value)
 
#define vsf_pyal_arg_getint(__intarg)   arg_getInt(__intarg)
 
#define vsf_pyal_newarg_float(__value)   arg_newFloat(__value)
 
#define vsf_pyal_arg_getfloat(__floatarg)   arg_getFloat(__floatarg)
 
#define vsf_pyal_newarg_str(__str)   arg_newStr(__str)
 
#define vsf_pyal_newarg_str_ret(__str)
 
#define vsf_pyal_newarg_str_and_free(__str)
 
#define vsf_pyal_arg_getstr(__str_arg)   arg_getStr(__str_arg)
 
#define vsf_pyal_newarg_bytes(__data, __len)   arg_newBytes((uint8_t *)(__data), (__len))
 
#define vsf_pyal_newarg_bytes_ret(__data, __len)
 
#define vsf_pyal_arg_getbytes(__bytesarg, __len_ptr)
 
#define vsf_pyal_newarg_bytes_ret_and_free(__data, __len)
 
#define vsf_pyal_newfuncarg_bytes_ret_and_free(__data, __len)
 
#define vsf_pyal_newobj_bytes_ret_and_free(__data, __len)
 
#define vsf_pyal_newarg_bool(__bool)   arg_newBool(__bool)
 
#define vsf_pyal_arg_getbool(__boolarg)   arg_getBool(__boolarg)
 
#define VSF_PYAL_OBJ_NULL   NULL
 
#define vsf_pyal_obj_lookup(__obj, __name)   obj_getArg((__obj), VSF_STR(__name))
 
#define vsf_pyal_newobj_list(__num, __args)
 
#define vsf_pyal_newarg_list(__num, __args_ptr)
 
#define vsf_pyal_listobj_append(__listobj, __arg)   pikaList_append((__listobj), (__arg))
 
#define vsf_pyal_listobj_getnum(__listobj)   pikaList_getSize(__listobj)
 
#define vsf_pyal_listobj_getarg(__listobj, __idx)   pikaList_getArg((__listobj), (__idx))
 
#define vsf_pyal_listarg_getnum(__listarg)   vsf_pyal_listobj_getnum(arg_getObj(__listarg))
 
#define vsf_pyal_listarg_getarg(__listarg, __idx)   vsf_pyal_listobj_getarg(arg_getObj(__listarg), (__idx))
 
#define vsf_pyal_inst_base_def()
 
#define __vsf_pyal_newobj_inst(__mod, __class)   newNormalObj(New_ ## __mod ## _ ## __class)
 
#define vsf_pyal_newobj_inst(__mod, __class)   not supported
 
#define vsf_pyal_instobj_get(__instobj)   arg_getBytes(obj_getArg((__instobj), "_self"))
 
#define vsf_pyal_instarg_get(__instarg)   vsf_pyal_instobj_get(vsf_pyal_arg_getobj(__instarg))
 
#define vsf_pyal_instobj_strkey_addobj(__instobj, __key_str, __obj)
 
#define vsf_pyal_newobj_file(__file, __is_text)
 
#define vsf_pyal_newarg_file(__file, __is_text)
 
#define vsf_pyal_filearg_getfile(__filearg)
 
#define vsf_pyal_filearg_clear(__filearg)
 
#define vsf_pyal_arg_is_file(__arg)
 
#define vsf_pyal_newobj_tuple(__num, __args)
 
#define vsf_pyal_tupleobj_getint(__tupleobj, __idx)   pikaTuple_getInt((__tupleobj), (__idx))
 
#define vsf_pyal_tupleobj_getstr(__tupleobj, __idx)   pikaTuple_getStr((__tupleobj), (__idx))
 
#define vsf_pyal_tupleobj_getarg(__tupleobj, __idx)   pikaTuple_getArg((__tupleobj), (__idx))
 
#define vsf_pyal_tupleobj_getnum(__tupleobj)   pikaTuple_getSize(__tupleobj)
 
#define vsf_pyal_newarg_tuple(__num, __args)
 
#define vsf_pyal_tuplearg_getint(__tuplearg, __idx)   pikaTuple_getInt(arg_getObj(__tuplearg), (__idx))
 
#define vsf_pyal_tuplearg_getstr(__tuplearg, __idx)   pikaTuple_getStr(arg_getObj(__tuplearg), (__idx))
 
#define vsf_pyal_tuplearg_getfloat(__tuplearg, __idx)   pikaTuple_getFloat(arg_getObj(__tuplearg), (__idx))
 
#define vsf_pyal_tuplearg_getarg(__tuplearg, __idx)   pikaTuple_getArg(arg_getObj(__tuplearg), (__idx))
 
#define vsf_pyal_tuplearg_getnum(__tuplearg)   pikaTuple_getSize(arg_getObj(__tuplearg))
 
#define vsf_pyal_dictkey_getstr(__dict_key)   (__dict_key)
 
#define vsf_pyal_newobj_dict()   New_PikaDict()
 
#define vsf_pyal_dictobj_strkey_set(__dict_obj, __key_str, __value_arg)    pikaDict_set((__dict_obj), __key_str, (__value_arg))
 
#define vsf_pyal_module_addobj(__mod, __key_str, __obj)
 
#define vsf_pyal_module_addstr(__mod, __name, __str)    obj_setStr(selfobj, (__name), (__str))
 
#define vsf_pyal_module_addint(__mod, __name, __value)    obj_setInt(selfobj, (__name), (__value))
 
#define vsf_pyal_funcarg_str_t   char *
 
#define vsf_pyal_funcarg_getstr(__arg)   (__arg)
 
#define vsf_pyal_newfuncarg_str(__str)   obj_cacheStr(selfobj, (__str))
 
#define vsf_pyal_funcarg_int_t   int
 
#define vsf_pyal_funcarg_getint(__arg)   (__arg)
 
#define vsf_pyal_newfuncarg_int(__value)   (__value)
 
#define vsf_pyal_funcarg_bool_t   bool
 
#define vsf_pyal_funcarg_getbool(__arg)   (__arg)
 
#define vsf_pyal_newfuncarg_bool(__bool)   (__bool)
 
#define vsf_pyal_funcarg_float_t   float
 
#define vsf_pyal_funcarg_getfloat(__arg)   (__arg)
 
#define vsf_pyal_newfuncarg_float(__value)   (__value)
 
#define vsf_pyal_funcarg_bytes_t   uint8_t *
 
#define vsf_pyal_funcarg_callable_t   vsf_pyal_arg_t
 
#define vsf_pyal_funcarg_tuple_t   vsf_pyal_obj_t
 
#define vsf_pyal_funcarg_tuple_getint(__tupleobj, __idx)   vsf_pyal_tupleobj_getint((__tupleobj), (__idx))
 
#define vsf_pyal_funcarg_tuple_getstr(__tupleobj, __idx)   vsf_pyal_tupleobj_getstr((__tupleobj), (__idx))
 
#define vsf_pyal_funcarg_tuple_getarg(__tupleobj, __idx)   vsf_pyal_tupleobj_getarg((__tupleobj), (__idx))
 
#define vsf_pyal_funcarg_var(__name)   vsf_pyal_obj_t __name
 
#define vsf_pyal_funcarg_var_for_call(__name)   __name
 
#define vsf_pyal_funcarg_var_num(__name)   pikaTuple_getSize(__name)
 
#define vsf_pyal_funcarg_var_is_str(__name, __idx)   (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_STRING)
 
#define vsf_pyal_funcarg_var_getstr(__name, __idx)   pikaTuple_getStr((__name), (__idx))
 
#define vsf_pyal_funcarg_var_is_int(__name, __idx)   (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_INT)
 
#define vsf_pyal_funcarg_var_getint(__name, __idx)   pikaTuple_getInt((__name), (__idx))
 
#define vsf_pyal_funcarg_var_getbool(__name, __idx)   arg_getBool(pikaTuple_getArg((__name), (__idx)))
 
#define vsf_pyal_funcarg_var_is_tuple(__name, __idx)   (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_TUPLE)
 
#define vsf_pyal_funcarg_var_getarg(__name, __idx)   pikaTuple_getArg((__name), (__idx))
 
#define vsf_pyal_funcarg_keyword(__name)   vsf_pyal_obj_t __name ## _args
 
#define vsf_pyal_funcarg_void
 
#define vsf_pyal_class_func_var_arg_skip_self(__arg_name)
 
#define vsf_pyal_class_func_var_arg_restore_self(__arg_name)
 
#define vsf_pyal_func_void_return_t   void
 
#define vsf_pyal_func_void_return()   return
 
#define vsf_pyal_module_func_var_imp(__mod, __func, __ret_type, __min_arg, __max_arg, __arg_name)    __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))
 
#define VSF_PYAL_MODULE_FUNCARG_OBJ_0   0
 
#define VSF_PYAL_MODULE_FUNCARG_OBJ_1   1
 
#define VSF_PYAL_MODULE_FUNCARG_OBJ_2   2
 
#define vsf_pyal_module_func_fix_imp(__mod, __func, __func_type, __ret_type, ...)    __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_keyword_is_str
 
#define vsf_pyal_keyword(__key_name)   VSF_STR(__key_name)
 
#define __vsf_pyal_keyword_getint(__arg_name, __key, __idx)
 
#define __vsf_pyal_keyword_getbool(__arg_name, __key, __idx)
 
#define __vsf_pyal_keyword_getarg(__arg_name, __key, __idx)
 
#define __vsf_pyal_keyword_parser_arg(__arg_name)   vsf_pyal_obj_t __name ## _args
 
#define vsf_pyal_parse_tuple_keyword(__arg_name, ...)   __vsf_pyal_parse_tuple_keyword(__arg_name ## _args, ##__VA_ARGS__)
 
#define vsf_pyal_keyword_getint_forced(__arg_name, __key_name, __key_idx)
 
#define vsf_pyal_keyword_getbool_forced(__arg_name, __key_name, __key_idx)
 
#define vsf_pyal_keyword_getarg_forced(__arg_name, __key_name, __key_idx)
 
#define vsf_pyal_keyword_getint(__arg_name, __key_name, __key_idx, __default)
 
#define vsf_pyal_keyword_getbool(__arg_name, __key_name, __key_idx, __default)
 
#define vsf_pyal_keyword_getarg(__arg_name, __key_name, __key_idx, __default)
 
#define vsf_pyal_module_func_keyword_imp(__mod, __func, __ret_type, __min_arg, __max_arg, __arg_name, ...)
 
#define vsf_pyal_module_func_keyword_imp_end()   }
 
#define vsf_pyal_module_func_init_prototype(__mod)    extern void __mod ## _ ## __init__(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_module_func_init_declare(__mod)    extern void __mod ## _ ## __init__(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_module_func_init_imp(__mod)    vsf_pyal_module_func_fix_imp(__mod, __init__, VSF_PYAL_MODULE_FUNCARG_OBJ_0, void)
 
#define vsf_pyal_module_func_init_return()
 
#define vsf_pyal_module_func_type(__mod, __func, __ret_type, ...)    typedef __ret_type (*__mod ## _ ## __func ## _t)(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_module_func_prototype(__mod, __func, __ret_type, ...)    extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_module_func_name(__mod, __func)    __mod ## _ ## __func
 
#define vsf_pyal_module_func_call(__func_full_name, ...)    __func_full_name(selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_module_func_declare(__mod, __func, __ret_type, ...)    extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_module_func_type_noarg(__mod, __func, __ret_type)    typedef __ret_type (*__mod ## _ ## __func ## _t)(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_module_func_prototype_noarg(__mod, __func, __ret_type)    extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_module_func_declare_noarg(__mod, __func, __ret_type)    extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_class_getself_from_obj(__mod, __class, __name, __instobj)    __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instobj_get(__instobj)
 
#define vsf_pyal_class_getself_from_arg(__mod, __class, __name, __instarg)    __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instarg_get(__instarg)
 
#define vsf_pyal_class_arg_getself(__mod, __class, __name)    __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instobj_get(selfobj)
 
#define vsf_pyal_class_new(__mod, __class, __args_num, __args)
 
#define vsf_pyal_class_newc(__mod, __class, __exsize, __obj_ptr)
 
#define vsf_pyal_class_new_keyword_func(__mod, __class, __arg_name, ...)
 
#define vsf_pyal_class_new_func(__mod, __class, __arg_name)
 
#define vsf_pyal_class_new_create(__mod, __class, __exsize)
 
#define vsf_pyal_class_new_del(__mod, __class, __exsize, __ptr)    obj_removeArg(selfobj, "_self")
 
#define vsf_pyal_class_new_fail(__mod, __class, __fmt, ...)
 
#define vsf_pyal_class_new_arg_num(__name)   vsf_pyal_funcarg_var_num(__name ## _args)
 
#define vsf_pyal_class_new_is_int(__name, __idx)   vsf_pyal_funcarg_var_is_int(__name ## _args, __idx)
 
#define vsf_pyal_class_new_getint(__name, __idx)   vsf_pyal_funcarg_var_getint(__name ## _args, __idx)
 
#define vsf_pyal_class_new_getstr(__name, __idx)   vsf_pyal_funcarg_var_getstr(__name ## _args, __idx)
 
#define vsf_pyal_class_new_getarg(__name, __idx)   vsf_pyal_funcarg_var_getarg(__name ## _args, __idx)
 
#define vsf_pyal_class_new_func_end()
 
#define vsf_pyal_class_del_func(__mod, __class)
 
#define vsf_pyal_class_del_func_end()
 
#define vsf_pyal_class_print_func(__mod, __class)    vsf_pyal_funcarg_str_t __mod ## _ ## __class ## ___str__(vsf_pyal_obj_t selfobj)
 
#define vsf_pyal_class_print_func_fmt(__mod, __class, __fmt, ...)
 
#define vsf_pyal_class_attr_func(__mod, __class, __arg_name)
 
#define vsf_pyal_class_attr_is_load(__arg_name)   ((VSF_PYAL_ARG_NULL == __arg_name ## valuearg) && !__arg_name ## is_del)
 
#define vsf_pyal_class_attr_is_store(__arg_name)   (__arg_name ## valuearg != VSF_PYAL_ARG_NULL)
 
#define vsf_pyal_class_attr_is_delete(__arg_name)   (__arg_name ## is_del)
 
#define vsf_pyal_class_attr_get_valuearg(__arg_name)   (__arg_name ## valuearg)
 
#define vsf_pyal_class_attr_ret_load_fail(__arg_name)    return VSF_PYAL_OBJ_NULL
 
#define vsf_pyal_class_attr_ret_load_obj(__arg_name, __obj)    return (__obj)
 
#define vsf_pyal_class_attr_ret_load_method(__arg_name, __method)    return (__method)
 
#define vsf_pyal_class_attr_ret_fail(__arg_name)    return VSF_PYAL_OBJ_NULL
 
#define vsf_pyal_class_attr_ret_success(__arg_name)    return VSF_PYAL_OBJ_NULL
 
#define vsf_pyal_class_func_var_private_imp(__mod, __func, __ret_type, __min_arg, __max_arg, __arg_name)    __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))
 
#define vsf_pyal_class_func_var_imp(__mod, __func, __ret_type, __min_arg, __max_arg, __arg_name)    __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))
 
#define vsf_pyal_class_func_fix_imp(__mod, __func, __func_type, __ret_type, ...)    __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)
 
#define vsf_pyal_class_func_keyword_imp(__mod, __func, __ret_type, __min_arg, __max_arg, __arg_name, ...)
 
#define vsf_pyal_class_func_keyword_imp_end()   }
 
#define vsf_pyal_class_func_call_var(__mod, __func, __instobj, arg)    __mod ## _ ## __func(__instobj, vsf_pyal_funcarg_var_for_call(arg))
 
#define vsf_pyal_class_func_call_fix(__mod, __func, __instobj, ...)    __mod ## _ ## __func(__instobj, ##__VA_ARGS__)
 
#define vsf_pyal_class_declare(__mod, __class)
 
#define vsf_pyal_hash_string(__str)   hash_time33(__str)
 
#define vsf_pyal_raise(__fmt, ...)
 

Typedefs

typedef Arg * vsf_pyal_arg_t
 
typedef PikaObj * vsf_pyal_obj_t
 
typedef char * vsf_pyal_dict_key_t
 

Functions

int __vsf_pyal_parse_tuple_keyword (__vsf_pyal_keyword_parser_arg(arg), const char *format,...)
 

Macro Definition Documentation

◆ VSF_PYAL_FEATURE_FUNCARG_NUM_CHECK

#define VSF_PYAL_FEATURE_FUNCARG_NUM_CHECK   1

◆ VSF_PYAL_FEATURE_MODULE_IS_DYN

#define VSF_PYAL_FEATURE_MODULE_IS_DYN   1

◆ VSF_PYAL_ARG_NULL

#define VSF_PYAL_ARG_NULL   NULL

◆ vsf_pyal_newarg_obj

#define vsf_pyal_newarg_obj (   __obj)    arg_newObj(__obj)

◆ vsf_pyal_arg_is_int

#define vsf_pyal_arg_is_int (   __arg)    (arg_getType(__arg) == ARG_TYPE_INT)

◆ vsf_pyal_arg_is_float

#define vsf_pyal_arg_is_float (   __arg)    (arg_getType(__arg) == ARG_TYPE_FLOAT)

◆ vsf_pyal_arg_is_str

#define vsf_pyal_arg_is_str (   __arg)    (arg_getType(__arg) == ARG_TYPE_STRING)

◆ vsf_pyal_arg_is_bool

#define vsf_pyal_arg_is_bool (   __arg)    (arg_getType(__arg) == ARG_TYPE_BOOL)

◆ vsf_pyal_arg_is_list

#define vsf_pyal_arg_is_list (   __arg)    arg_isList(__arg)

◆ vsf_pyal_arg_is_tuple

#define vsf_pyal_arg_is_tuple (   __arg)    arg_isTuple(__arg)

◆ vsf_pyal_arg_is_callable

#define vsf_pyal_arg_is_callable (   __arg)    arg_isCallable(__arg)

◆ vsf_pyal_arg_is_iterable

#define vsf_pyal_arg_is_iterable (   __arg)    arg_isIterable(__arg)

◆ vsf_pyal_arg_is_class

#define vsf_pyal_arg_is_class (   __arg,
  __mod,
  __class 
)     (vsf_pyal_arg_getobj(__arg)->constructor == New_ ## __mod ## _ ## __class)

◆ vsf_pyal_arg_getobj

#define vsf_pyal_arg_getobj (   __arg)    arg_getObj(__arg)

◆ vsf_pyal_arg_free

#define vsf_pyal_arg_free (   __arg)    arg_deinit(__arg)

◆ vsf_pyal_arg_iter

#define vsf_pyal_arg_iter (   __arg,
  ... 
)

◆ vsf_pyal_intvalue_t

#define vsf_pyal_intvalue_t   int64_t

◆ vsf_pyal_newarg_int

#define vsf_pyal_newarg_int (   __value)    arg_newInt(__value)

◆ vsf_pyal_arg_getint

#define vsf_pyal_arg_getint (   __intarg)    arg_getInt(__intarg)

◆ vsf_pyal_newarg_float

#define vsf_pyal_newarg_float (   __value)    arg_newFloat(__value)

◆ vsf_pyal_arg_getfloat

#define vsf_pyal_arg_getfloat (   __floatarg)    arg_getFloat(__floatarg)

◆ vsf_pyal_newarg_str

#define vsf_pyal_newarg_str (   __str)    arg_newStr(__str)

◆ vsf_pyal_newarg_str_ret

#define vsf_pyal_newarg_str_ret (   __str)
Value:
({ \
obj_setStr(selfobj, __FUNCTION__, (__str)); \
obj_getStr(selfobj, __FUNCTION__); \
})

◆ vsf_pyal_newarg_str_and_free

#define vsf_pyal_newarg_str_and_free (   __str)
Value:
({ \
obj_setStr(selfobj, __FUNCTION__, (__str)); \
free(__str); \
obj_getStr(selfobj, __FUNCTION__); \
})

◆ vsf_pyal_arg_getstr

#define vsf_pyal_arg_getstr (   __str_arg)    arg_getStr(__str_arg)

◆ vsf_pyal_newarg_bytes

#define vsf_pyal_newarg_bytes (   __data,
  __len 
)    arg_newBytes((uint8_t *)(__data), (__len))

◆ vsf_pyal_newarg_bytes_ret

#define vsf_pyal_newarg_bytes_ret (   __data,
  __len 
)
Value:
({ \
obj_setBytes(selfobj, __FUNCTION__, (uint8_t *)(__data), (__len)); \
obj_getBytes(selfobj, __FUNCTION__); \
})
unsigned char uint8_t
Definition stdint.h:5

◆ vsf_pyal_arg_getbytes

#define vsf_pyal_arg_getbytes (   __bytesarg,
  __len_ptr 
)
Value:
({ \
if ((__len_ptr) != NULL) { \
*((uint32_t *)(__len_ptr)) = arg_getSize(__bytesarg) - sizeof(size_t) - 1;\
} \
arg_getBytes(__bytesarg); \
})
#define NULL
Definition stddef.h:52
unsigned int size_t
Definition types.h:51
unsigned uint32_t
Definition stdint.h:9

◆ vsf_pyal_newarg_bytes_ret_and_free

#define vsf_pyal_newarg_bytes_ret_and_free (   __data,
  __len 
)
Value:
({ \
free(__data); \
VSF_MACRO_SAFE_NAME(arg); \
})
mp_obj_t vsf_pyal_arg_t
Definition vsf_micropython.h:58
#define vsf_pyal_newarg_bytes(__data, __len)
Definition vsf_pikapython.h:92
#define VSF_MACRO_SAFE_NAME(__NAME)
Definition vsf_preprocessor.h:32

◆ vsf_pyal_newfuncarg_bytes_ret_and_free

#define vsf_pyal_newfuncarg_bytes_ret_and_free (   __data,
  __len 
)
Value:
({ \
obj_setBytes(selfobj, __FUNCTION__, (uint8_t *)(__data), (__len)); \
free(__data); \
obj_getBytes(selfobj, __FUNCTION__); \
})

◆ vsf_pyal_newobj_bytes_ret_and_free

#define vsf_pyal_newobj_bytes_ret_and_free (   __data,
  __len 
)
Value:
({ \
free(__data); \
vsf_pyal_arg_getobj(VSF_MACRO_SAFE_NAME(arg)); \
})

◆ vsf_pyal_newarg_bool

#define vsf_pyal_newarg_bool (   __bool)    arg_newBool(__bool)

◆ vsf_pyal_arg_getbool

#define vsf_pyal_arg_getbool (   __boolarg)    arg_getBool(__boolarg)

◆ VSF_PYAL_OBJ_NULL

#define VSF_PYAL_OBJ_NULL   NULL

◆ vsf_pyal_obj_lookup

#define vsf_pyal_obj_lookup (   __obj,
  __name 
)    obj_getArg((__obj), VSF_STR(__name))

◆ vsf_pyal_newobj_list

#define vsf_pyal_newobj_list (   __num,
  __args 
)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(listobj) = New_PikaList(); \
for (int i = 0; i < (__num); i++) { \
PikaStdData_List_append(VSF_MACRO_SAFE_NAME(listobj), ((vsf_pyal_arg_t *)(__args))[i]);\
} \
VSF_MACRO_SAFE_NAME(listobj); \
})
mp_obj_t vsf_pyal_obj_t
Definition vsf_micropython.h:159

◆ vsf_pyal_newarg_list

#define vsf_pyal_newarg_list (   __num,
  __args_ptr 
)
Value:
({ \
vsf_pyal_obj_t listobj = vsf_pyal_newobj_list((__num), (__args_ptr)); \
vsf_pyal_newarg_obj(listobj); \
})
#define vsf_pyal_newobj_list(__num, __args)
Definition vsf_pikapython.h:139

◆ vsf_pyal_listobj_append

#define vsf_pyal_listobj_append (   __listobj,
  __arg 
)    pikaList_append((__listobj), (__arg))

◆ vsf_pyal_listobj_getnum

#define vsf_pyal_listobj_getnum (   __listobj)    pikaList_getSize(__listobj)

◆ vsf_pyal_listobj_getarg

#define vsf_pyal_listobj_getarg (   __listobj,
  __idx 
)    pikaList_getArg((__listobj), (__idx))

◆ vsf_pyal_listarg_getnum

#define vsf_pyal_listarg_getnum (   __listarg)    vsf_pyal_listobj_getnum(arg_getObj(__listarg))

◆ vsf_pyal_listarg_getarg

#define vsf_pyal_listarg_getarg (   __listarg,
  __idx 
)    vsf_pyal_listobj_getarg(arg_getObj(__listarg), (__idx))

◆ vsf_pyal_inst_base_def

#define vsf_pyal_inst_base_def ( )

◆ __vsf_pyal_newobj_inst

#define __vsf_pyal_newobj_inst (   __mod,
  __class 
)    newNormalObj(New_ ## __mod ## _ ## __class)

◆ vsf_pyal_newobj_inst

#define vsf_pyal_newobj_inst (   __mod,
  __class 
)    not supported

◆ vsf_pyal_instobj_get

#define vsf_pyal_instobj_get (   __instobj)    arg_getBytes(obj_getArg((__instobj), "_self"))

◆ vsf_pyal_instarg_get

#define vsf_pyal_instarg_get (   __instarg)    vsf_pyal_instobj_get(vsf_pyal_arg_getobj(__instarg))

◆ vsf_pyal_instobj_strkey_addobj

#define vsf_pyal_instobj_strkey_addobj (   __instobj,
  __key_str,
  __obj 
)
Value:
({ \
obj_setArg_noCopy((__instobj), (__key_str), VSF_MACRO_SAFE_NAME(arg)); \
})
#define vsf_pyal_newarg_obj(__obj)
Definition vsf_pikapython.h:46

◆ vsf_pyal_newobj_file

#define vsf_pyal_newobj_file (   __file,
  __is_text 
)
Value:
({ \
(void)(__is_text); \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(fileobj) = newNormalObj(New_PikaStdData_FILEIO);\
obj_setPtr(VSF_MACRO_SAFE_NAME(fileobj), "_f", (__file)); \
obj_setStr(VSF_MACRO_SAFE_NAME(fileobj), "_mode", (__is_text) ? "t" : "b");\
VSF_MACRO_SAFE_NAME(fileobj); \
})

◆ vsf_pyal_newarg_file

#define vsf_pyal_newarg_file (   __file,
  __is_text 
)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(fileobj) = vsf_pyal_newobj_file((__file), (__is_text));\
arg_newObj(VSF_MACRO_SAFE_NAME(fileobj)); \
})
#define vsf_pyal_newobj_file(__file, __is_text)
Definition vsf_pikapython.h:177

◆ vsf_pyal_filearg_getfile

#define vsf_pyal_filearg_getfile (   __filearg)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(fileobj) = arg_getObj(__filearg); \
(FILE *)obj_getPtr(VSF_MACRO_SAFE_NAME(fileobj), "_f"); \
})
int FILE
Definition stdio.h:141

◆ vsf_pyal_filearg_clear

#define vsf_pyal_filearg_clear (   __filearg)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(fileobj) = arg_getObj(__filearg); \
obj_setPtr(VSF_MACRO_SAFE_NAME(fileobj), "_f", NULL); \
})

◆ vsf_pyal_arg_is_file

#define vsf_pyal_arg_is_file (   __arg)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(fileobj) = arg_getObj(__arg); \
VSF_MACRO_SAFE_NAME(fileobj)->constructor == New_PikaStdData_FILEIO; \
})

◆ vsf_pyal_newobj_tuple

#define vsf_pyal_newobj_tuple (   __num,
  __args 
)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(tupleobj) = New_PikaTuple(); \
for (int i = 0; i < (__num); i++) { \
PikaStdData_List_append(VSF_MACRO_SAFE_NAME(tupleobj), (__args)[i]);\
} \
VSF_MACRO_SAFE_NAME(tupleobj); \
})

◆ vsf_pyal_tupleobj_getint

#define vsf_pyal_tupleobj_getint (   __tupleobj,
  __idx 
)    pikaTuple_getInt((__tupleobj), (__idx))

◆ vsf_pyal_tupleobj_getstr

#define vsf_pyal_tupleobj_getstr (   __tupleobj,
  __idx 
)    pikaTuple_getStr((__tupleobj), (__idx))

◆ vsf_pyal_tupleobj_getarg

#define vsf_pyal_tupleobj_getarg (   __tupleobj,
  __idx 
)    pikaTuple_getArg((__tupleobj), (__idx))

◆ vsf_pyal_tupleobj_getnum

#define vsf_pyal_tupleobj_getnum (   __tupleobj)    pikaTuple_getSize(__tupleobj)

◆ vsf_pyal_newarg_tuple

#define vsf_pyal_newarg_tuple (   __num,
  __args 
)
Value:
({ \
arg_newObj(VSF_MACRO_SAFE_NAME(tupleobj)); \
})
#define vsf_pyal_newobj_tuple(__num, __args)
Definition vsf_pikapython.h:210

◆ vsf_pyal_tuplearg_getint

#define vsf_pyal_tuplearg_getint (   __tuplearg,
  __idx 
)    pikaTuple_getInt(arg_getObj(__tuplearg), (__idx))

◆ vsf_pyal_tuplearg_getstr

#define vsf_pyal_tuplearg_getstr (   __tuplearg,
  __idx 
)    pikaTuple_getStr(arg_getObj(__tuplearg), (__idx))

◆ vsf_pyal_tuplearg_getfloat

#define vsf_pyal_tuplearg_getfloat (   __tuplearg,
  __idx 
)    pikaTuple_getFloat(arg_getObj(__tuplearg), (__idx))

◆ vsf_pyal_tuplearg_getarg

#define vsf_pyal_tuplearg_getarg (   __tuplearg,
  __idx 
)    pikaTuple_getArg(arg_getObj(__tuplearg), (__idx))

◆ vsf_pyal_tuplearg_getnum

#define vsf_pyal_tuplearg_getnum (   __tuplearg)    pikaTuple_getSize(arg_getObj(__tuplearg))

◆ vsf_pyal_dictkey_getstr

#define vsf_pyal_dictkey_getstr (   __dict_key)    (__dict_key)

◆ vsf_pyal_newobj_dict

#define vsf_pyal_newobj_dict ( )    New_PikaDict()

◆ vsf_pyal_dictobj_strkey_set

#define vsf_pyal_dictobj_strkey_set (   __dict_obj,
  __key_str,
  __value_arg 
)     pikaDict_set((__dict_obj), __key_str, (__value_arg))

◆ vsf_pyal_module_addobj

#define vsf_pyal_module_addobj (   __mod,
  __key_str,
  __obj 
)
Value:
({ \
obj_setArg_noCopy(selfobj, (__key_str), VSF_MACRO_SAFE_NAME(arg)); \
})

◆ vsf_pyal_module_addstr

#define vsf_pyal_module_addstr (   __mod,
  __name,
  __str 
)     obj_setStr(selfobj, (__name), (__str))

◆ vsf_pyal_module_addint

#define vsf_pyal_module_addint (   __mod,
  __name,
  __value 
)     obj_setInt(selfobj, (__name), (__value))

◆ vsf_pyal_funcarg_str_t

#define vsf_pyal_funcarg_str_t   char *

◆ vsf_pyal_funcarg_getstr

#define vsf_pyal_funcarg_getstr (   __arg)    (__arg)

◆ vsf_pyal_newfuncarg_str

#define vsf_pyal_newfuncarg_str (   __str)    obj_cacheStr(selfobj, (__str))

◆ vsf_pyal_funcarg_int_t

#define vsf_pyal_funcarg_int_t   int

◆ vsf_pyal_funcarg_getint

#define vsf_pyal_funcarg_getint (   __arg)    (__arg)

◆ vsf_pyal_newfuncarg_int

#define vsf_pyal_newfuncarg_int (   __value)    (__value)

◆ vsf_pyal_funcarg_bool_t

#define vsf_pyal_funcarg_bool_t   bool

◆ vsf_pyal_funcarg_getbool

#define vsf_pyal_funcarg_getbool (   __arg)    (__arg)

◆ vsf_pyal_newfuncarg_bool

#define vsf_pyal_newfuncarg_bool (   __bool)    (__bool)

◆ vsf_pyal_funcarg_float_t

#define vsf_pyal_funcarg_float_t   float

◆ vsf_pyal_funcarg_getfloat

#define vsf_pyal_funcarg_getfloat (   __arg)    (__arg)

◆ vsf_pyal_newfuncarg_float

#define vsf_pyal_newfuncarg_float (   __value)    (__value)

◆ vsf_pyal_funcarg_bytes_t

#define vsf_pyal_funcarg_bytes_t   uint8_t *

◆ vsf_pyal_funcarg_callable_t

#define vsf_pyal_funcarg_callable_t   vsf_pyal_arg_t

◆ vsf_pyal_funcarg_tuple_t

#define vsf_pyal_funcarg_tuple_t   vsf_pyal_obj_t

◆ vsf_pyal_funcarg_tuple_getint

#define vsf_pyal_funcarg_tuple_getint (   __tupleobj,
  __idx 
)    vsf_pyal_tupleobj_getint((__tupleobj), (__idx))

◆ vsf_pyal_funcarg_tuple_getstr

#define vsf_pyal_funcarg_tuple_getstr (   __tupleobj,
  __idx 
)    vsf_pyal_tupleobj_getstr((__tupleobj), (__idx))

◆ vsf_pyal_funcarg_tuple_getarg

#define vsf_pyal_funcarg_tuple_getarg (   __tupleobj,
  __idx 
)    vsf_pyal_tupleobj_getarg((__tupleobj), (__idx))

◆ vsf_pyal_funcarg_var

#define vsf_pyal_funcarg_var (   __name)    vsf_pyal_obj_t __name

◆ vsf_pyal_funcarg_var_for_call

#define vsf_pyal_funcarg_var_for_call (   __name)    __name

◆ vsf_pyal_funcarg_var_num

#define vsf_pyal_funcarg_var_num (   __name)    pikaTuple_getSize(__name)

◆ vsf_pyal_funcarg_var_is_str

#define vsf_pyal_funcarg_var_is_str (   __name,
  __idx 
)    (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_STRING)

◆ vsf_pyal_funcarg_var_getstr

#define vsf_pyal_funcarg_var_getstr (   __name,
  __idx 
)    pikaTuple_getStr((__name), (__idx))

◆ vsf_pyal_funcarg_var_is_int

#define vsf_pyal_funcarg_var_is_int (   __name,
  __idx 
)    (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_INT)

◆ vsf_pyal_funcarg_var_getint

#define vsf_pyal_funcarg_var_getint (   __name,
  __idx 
)    pikaTuple_getInt((__name), (__idx))

◆ vsf_pyal_funcarg_var_getbool

#define vsf_pyal_funcarg_var_getbool (   __name,
  __idx 
)    arg_getBool(pikaTuple_getArg((__name), (__idx)))

◆ vsf_pyal_funcarg_var_is_tuple

#define vsf_pyal_funcarg_var_is_tuple (   __name,
  __idx 
)    (pikaTuple_getType((__name), (__idx)) == ARG_TYPE_TUPLE)

◆ vsf_pyal_funcarg_var_getarg

#define vsf_pyal_funcarg_var_getarg (   __name,
  __idx 
)    pikaTuple_getArg((__name), (__idx))

◆ vsf_pyal_funcarg_keyword

#define vsf_pyal_funcarg_keyword (   __name)    vsf_pyal_obj_t __name ## _args

◆ vsf_pyal_funcarg_void

#define vsf_pyal_funcarg_void

◆ vsf_pyal_class_func_var_arg_skip_self

#define vsf_pyal_class_func_var_arg_skip_self (   __arg_name)

◆ vsf_pyal_class_func_var_arg_restore_self

#define vsf_pyal_class_func_var_arg_restore_self (   __arg_name)

◆ vsf_pyal_func_void_return_t

#define vsf_pyal_func_void_return_t   void

◆ vsf_pyal_func_void_return

#define vsf_pyal_func_void_return ( )    return

◆ vsf_pyal_module_func_var_imp

#define vsf_pyal_module_func_var_imp (   __mod,
  __func,
  __ret_type,
  __min_arg,
  __max_arg,
  __arg_name 
)     __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))

◆ VSF_PYAL_MODULE_FUNCARG_OBJ_0

#define VSF_PYAL_MODULE_FUNCARG_OBJ_0   0

◆ VSF_PYAL_MODULE_FUNCARG_OBJ_1

#define VSF_PYAL_MODULE_FUNCARG_OBJ_1   1

◆ VSF_PYAL_MODULE_FUNCARG_OBJ_2

#define VSF_PYAL_MODULE_FUNCARG_OBJ_2   2

◆ vsf_pyal_module_func_fix_imp

#define vsf_pyal_module_func_fix_imp (   __mod,
  __func,
  __func_type,
  __ret_type,
  ... 
)     __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)

◆ vsf_pyal_keyword_is_str

#define vsf_pyal_keyword_is_str

◆ vsf_pyal_keyword

#define vsf_pyal_keyword (   __key_name)    VSF_STR(__key_name)

◆ __vsf_pyal_keyword_getint

#define __vsf_pyal_keyword_getint (   __arg_name,
  __key,
  __idx 
)

◆ __vsf_pyal_keyword_getbool

#define __vsf_pyal_keyword_getbool (   __arg_name,
  __key,
  __idx 
)

◆ __vsf_pyal_keyword_getarg

#define __vsf_pyal_keyword_getarg (   __arg_name,
  __key,
  __idx 
)

◆ __vsf_pyal_keyword_parser_arg

#define __vsf_pyal_keyword_parser_arg (   __arg_name)    vsf_pyal_obj_t __name ## _args

◆ vsf_pyal_parse_tuple_keyword

#define vsf_pyal_parse_tuple_keyword (   __arg_name,
  ... 
)    __vsf_pyal_parse_tuple_keyword(__arg_name ## _args, ##__VA_ARGS__)

◆ vsf_pyal_keyword_getint_forced

#define vsf_pyal_keyword_getint_forced (   __arg_name,
  __key_name,
  __key_idx 
)
Value:
({ \
int result = 0; \
if (__arg_name ## _args_num <= (__key_idx)) { \
vsf_pyal_raise("invalie argument"); \
} else { \
result = vsf_pyal_arg_getint(pikaDict_getArgByidex(__arg_name ## _args, (__key_idx)));\
} \
result; \
})
#define vsf_pyal_arg_getint(__intarg)
Definition vsf_pikapython.h:67

◆ vsf_pyal_keyword_getbool_forced

#define vsf_pyal_keyword_getbool_forced (   __arg_name,
  __key_name,
  __key_idx 
)
Value:
({ \
bool result = false; \
if (__arg_name ## _args_num <= (__key_idx)) { \
vsf_pyal_raise("invalie argument"); \
} else { \
result = vsf_pyal_arg_getbool(pikaDict_getArgByidex(__arg_name ## _args, (__key_idx)));\
} \
result; \
})
#define vsf_pyal_arg_getbool(__boolarg)
Definition vsf_pikapython.h:128

◆ vsf_pyal_keyword_getarg_forced

#define vsf_pyal_keyword_getarg_forced (   __arg_name,
  __key_name,
  __key_idx 
)
Value:
({ \
if (__arg_name ## _args_num <= (__key_idx)) { \
vsf_pyal_raise("invalie argument"); \
} else { \
result = pikaDict_getArgByidex(__arg_name ## _args, (__key_idx)); \
} \
result; \
})
#define VSF_PYAL_ARG_NULL
Definition vsf_pikapython.h:44

◆ vsf_pyal_keyword_getint

#define vsf_pyal_keyword_getint (   __arg_name,
  __key_name,
  __key_idx,
  __default 
)
Value:
(__arg_name ## _args_num <= (__key_idx)) ? (__default) : \
vsf_pyal_arg_getint(pikaDict_getArgByidex(__arg_name ## _args, (__key_idx)))

◆ vsf_pyal_keyword_getbool

#define vsf_pyal_keyword_getbool (   __arg_name,
  __key_name,
  __key_idx,
  __default 
)
Value:
(__arg_name ## _args_num <= (__key_idx)) ? (__default) : \
vsf_pyal_arg_getbool(pikaDict_getArgByidex(__arg_name ## _args, (__key_idx)))

◆ vsf_pyal_keyword_getarg

#define vsf_pyal_keyword_getarg (   __arg_name,
  __key_name,
  __key_idx,
  __default 
)
Value:
(__arg_name ## _args_num <= (__key_idx)) ? (__default) : \
pikaDict_getArgByidex(__arg_name ## _args, (__key_idx))

◆ vsf_pyal_module_func_keyword_imp

#define vsf_pyal_module_func_keyword_imp (   __mod,
  __func,
  __ret_type,
  __min_arg,
  __max_arg,
  __arg_name,
  ... 
)
Value:
__ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_keyword(__arg_name)) {\
int __arg_name ## _args_num = pikaDict_getSize(__arg_name ## _args);
struct @733::@738 _
#define vsf_pyal_funcarg_keyword(__name)
Definition vsf_pikapython.h:287

◆ vsf_pyal_module_func_keyword_imp_end

#define vsf_pyal_module_func_keyword_imp_end ( )    }

◆ vsf_pyal_module_func_init_prototype

#define vsf_pyal_module_func_init_prototype (   __mod)     extern void __mod ## _ ## __init__(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_module_func_init_declare

#define vsf_pyal_module_func_init_declare (   __mod)     extern void __mod ## _ ## __init__(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_module_func_init_imp

#define vsf_pyal_module_func_init_imp (   __mod)     vsf_pyal_module_func_fix_imp(__mod, __init__, VSF_PYAL_MODULE_FUNCARG_OBJ_0, void)

◆ vsf_pyal_module_func_init_return

#define vsf_pyal_module_func_init_return ( )

◆ vsf_pyal_module_func_type

#define vsf_pyal_module_func_type (   __mod,
  __func,
  __ret_type,
  ... 
)     typedef __ret_type (*__mod ## _ ## __func ## _t)(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)

◆ vsf_pyal_module_func_prototype

#define vsf_pyal_module_func_prototype (   __mod,
  __func,
  __ret_type,
  ... 
)     extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)

◆ vsf_pyal_module_func_name

#define vsf_pyal_module_func_name (   __mod,
  __func 
)     __mod ## _ ## __func

◆ vsf_pyal_module_func_call

#define vsf_pyal_module_func_call (   __func_full_name,
  ... 
)     __func_full_name(selfobj, ##__VA_ARGS__)

◆ vsf_pyal_module_func_declare

#define vsf_pyal_module_func_declare (   __mod,
  __func,
  __ret_type,
  ... 
)     extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)

◆ vsf_pyal_module_func_type_noarg

#define vsf_pyal_module_func_type_noarg (   __mod,
  __func,
  __ret_type 
)     typedef __ret_type (*__mod ## _ ## __func ## _t)(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_module_func_prototype_noarg

#define vsf_pyal_module_func_prototype_noarg (   __mod,
  __func,
  __ret_type 
)     extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_module_func_declare_noarg

#define vsf_pyal_module_func_declare_noarg (   __mod,
  __func,
  __ret_type 
)     extern __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_class_getself_from_obj

#define vsf_pyal_class_getself_from_obj (   __mod,
  __class,
  __name,
  __instobj 
)     __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instobj_get(__instobj)

◆ vsf_pyal_class_getself_from_arg

#define vsf_pyal_class_getself_from_arg (   __mod,
  __class,
  __name,
  __instarg 
)     __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instarg_get(__instarg)

◆ vsf_pyal_class_arg_getself

#define vsf_pyal_class_arg_getself (   __mod,
  __class,
  __name 
)     __mod ## _ ## __class ## _t *__name = (__mod ## _ ## __class ## _t *)vsf_pyal_instobj_get(selfobj)

◆ vsf_pyal_class_new

#define vsf_pyal_class_new (   __mod,
  __class,
  __args_num,
  __args 
)
Value:
({ \
vsf_pyal_obj_t VSF_MACRO_SAFE_NAME(tupleobj) = vsf_pyal_newobj_tuple(__args_num, __args);\
__mod ## _ ## __class ## ___init__(VSF_MACRO_SAFE_NAME(selfobj), VSF_MACRO_SAFE_NAME(tupleobj));\
VSF_MACRO_SAFE_NAME(selfobj); \
})
#define __vsf_pyal_newobj_inst(__mod, __class)
Definition vsf_pikapython.h:165

◆ vsf_pyal_class_newc

#define vsf_pyal_class_newc (   __mod,
  __class,
  __exsize,
  __obj_ptr 
)
Value:
({ \
vsf_pyal_arg_t VSF_MACRO_SAFE_NAME(instarg) = arg_newBytes(NULL, sizeof(__mod ## _ ## __class ## _t) + (__exsize));\
obj_setArg_noCopy(VSF_MACRO_SAFE_NAME(selfobj), "_self", VSF_MACRO_SAFE_NAME(instarg));\
*(__obj_ptr) = VSF_MACRO_SAFE_NAME(selfobj); \
(__mod ## _ ## __class ## _t *)arg_getBytes(VSF_MACRO_SAFE_NAME(instarg));\
})

◆ vsf_pyal_class_new_keyword_func

#define vsf_pyal_class_new_keyword_func (   __mod,
  __class,
  __arg_name,
  ... 
)
Value:
void __mod ## _ ## __class ## ___init__(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_keyword(__arg_name)) {\
int __arg_name ## _args_num = pikaDict_getSize(__arg_name ## _args); \
__mod ## _ ## __class ## _t *self = NULL;

◆ vsf_pyal_class_new_func

#define vsf_pyal_class_new_func (   __mod,
  __class,
  __arg_name 
)
Value:
void __mod ## _ ## __class ## ___init__(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name ## _args)) {\
__mod ## _ ## __class ## _t *self = NULL;
#define vsf_pyal_funcarg_var(__name)
Definition vsf_pikapython.h:275

◆ vsf_pyal_class_new_create

#define vsf_pyal_class_new_create (   __mod,
  __class,
  __exsize 
)
Value:
({ \
vsf_pyal_arg_t VSF_MACRO_SAFE_NAME(instarg) = arg_newBytes(NULL, sizeof(__mod ## _ ## __class ## _t) + (__exsize));\
obj_setArg_noCopy(selfobj, "_self", VSF_MACRO_SAFE_NAME(instarg)); \
(__mod ## _ ## __class ## _t *)arg_getBytes(VSF_MACRO_SAFE_NAME(instarg));\
})

◆ vsf_pyal_class_new_del

#define vsf_pyal_class_new_del (   __mod,
  __class,
  __exsize,
  __ptr 
)     obj_removeArg(selfobj, "_self")

◆ vsf_pyal_class_new_fail

#define vsf_pyal_class_new_fail (   __mod,
  __class,
  __fmt,
  ... 
)
Value:
vsf_pyal_raise((__fmt), ##__VA_ARGS__); \
return;
#define vsf_pyal_raise(__fmt,...)
Definition vsf_pikapython.h:532

◆ vsf_pyal_class_new_arg_num

#define vsf_pyal_class_new_arg_num (   __name)    vsf_pyal_funcarg_var_num(__name ## _args)

◆ vsf_pyal_class_new_is_int

#define vsf_pyal_class_new_is_int (   __name,
  __idx 
)    vsf_pyal_funcarg_var_is_int(__name ## _args, __idx)

◆ vsf_pyal_class_new_getint

#define vsf_pyal_class_new_getint (   __name,
  __idx 
)    vsf_pyal_funcarg_var_getint(__name ## _args, __idx)

◆ vsf_pyal_class_new_getstr

#define vsf_pyal_class_new_getstr (   __name,
  __idx 
)    vsf_pyal_funcarg_var_getstr(__name ## _args, __idx)

◆ vsf_pyal_class_new_getarg

#define vsf_pyal_class_new_getarg (   __name,
  __idx 
)    vsf_pyal_funcarg_var_getarg(__name ## _args, __idx)

◆ vsf_pyal_class_new_func_end

#define vsf_pyal_class_new_func_end ( )
Value:
return; \
}

◆ vsf_pyal_class_del_func

#define vsf_pyal_class_del_func (   __mod,
  __class 
)
Value:
void __mod ## _ ## __class ## ___del__(vsf_pyal_obj_t selfobj) { \
__mod ## _ ## __class ## _t *self = (__mod ## _ ## __class ## _t *)vsf_pyal_instobj_get(selfobj);
#define vsf_pyal_instobj_get(__instobj)
Definition vsf_pikapython.h:167

◆ vsf_pyal_class_del_func_end

#define vsf_pyal_class_del_func_end ( )
Value:
}
#define vsf_pyal_func_void_return()
Definition vsf_pikapython.h:293

◆ vsf_pyal_class_print_func

#define vsf_pyal_class_print_func (   __mod,
  __class 
)     vsf_pyal_funcarg_str_t __mod ## _ ## __class ## ___str__(vsf_pyal_obj_t selfobj)

◆ vsf_pyal_class_print_func_fmt

#define vsf_pyal_class_print_func_fmt (   __mod,
  __class,
  __fmt,
  ... 
)
Value:
vsf_pyal_funcarg_str_t __mod ## _ ## __class ## ___str__(vsf_pyal_obj_t selfobj) {\
vsf_pyal_class_arg_getself(__mod, __class, self); \
int len = snprintf(NULL, 0, (__fmt), ##__VA_ARGS__); \
extern vsf_pyal_arg_t arg_set(vsf_pyal_arg_t selfarg, char *name, \
ArgType type, uint8_t *content, uint32_t size); \
vsf_pyal_arg_t strarg = arg_set(NULL, "", ARG_TYPE_STRING, NULL, len + 1);\
obj_setStr(selfobj, "_buf", arg_getStr(strarg)); \
arg_deinit(strarg); \
char *result = obj_getStr(selfobj, "_buf"); \
snprintf(result, len + 1, (__fmt), ##__VA_ARGS__); \
return result; \
}
#define snprintf
Definition stdio.h:96
vk_av_control_type_t type
Definition vsf_audio.h:170
uint32_t size
Definition vsf_memfs.h:50
#define vsf_pyal_funcarg_str_t
Definition vsf_pikapython.h:256

◆ vsf_pyal_class_attr_func

#define vsf_pyal_class_attr_func (   __mod,
  __class,
  __arg_name 
)
Value:
extern vsf_pyal_arg_t __mod ## _ ## __class ## _attr(vsf_pyal_obj_t selfobj,\
vsf_pyal_funcarg_str_t __arg_name ## keyobj, vsf_pyal_arg_t __arg_name ## valuearg,\
bool __arg_name ## is_del); \
vsf_pyal_class_func_fix_imp(__mod ## _ ## __class, __getattr__, VSF_PYAL_MODULE_FUNCARG_OBJ_2,\
{ \
return __mod ## _ ## __class ## _attr(selfobj, keyobj, VSF_PYAL_ARG_NULL, false);\
} \
vsf_pyal_class_func_fix_imp(__mod ## _ ## __class, __delattr__, VSF_PYAL_MODULE_FUNCARG_OBJ_2,\
{ \
return __mod ## _ ## __class ## _attr(selfobj, keyobj, VSF_PYAL_ARG_NULL, true);\
} \
vsf_pyal_class_func_fix_imp(__mod ## _ ## __class, __setattr__, VSF_PYAL_MODULE_FUNCARG_OBJ_3,\
{ \
__mod ## _ ## __class ## _attr(selfobj, keyobj, arg, false); \
vsf_pyal_func_void_return(); \
} \
vsf_pyal_arg_t __mod ## _ ## __class ## _attr(vsf_pyal_obj_t selfobj, \
vsf_pyal_funcarg_str_t __arg_name ## keyobj, vsf_pyal_arg_t __arg_name ## valuearg,\
bool __arg_name ## is_del)
#define VSF_PYAL_MODULE_FUNCARG_OBJ_3
Definition vsf_micropython.h:379
#define VSF_PYAL_MODULE_FUNCARG_OBJ_2
Definition vsf_pikapython.h:300
#define vsf_pyal_func_void_return_t
Definition vsf_pikapython.h:292

◆ vsf_pyal_class_attr_is_load

#define vsf_pyal_class_attr_is_load (   __arg_name)    ((VSF_PYAL_ARG_NULL == __arg_name ## valuearg) && !__arg_name ## is_del)

◆ vsf_pyal_class_attr_is_store

#define vsf_pyal_class_attr_is_store (   __arg_name)    (__arg_name ## valuearg != VSF_PYAL_ARG_NULL)

◆ vsf_pyal_class_attr_is_delete

#define vsf_pyal_class_attr_is_delete (   __arg_name)    (__arg_name ## is_del)

◆ vsf_pyal_class_attr_get_valuearg

#define vsf_pyal_class_attr_get_valuearg (   __arg_name)    (__arg_name ## valuearg)

◆ vsf_pyal_class_attr_ret_load_fail

#define vsf_pyal_class_attr_ret_load_fail (   __arg_name)     return VSF_PYAL_OBJ_NULL

◆ vsf_pyal_class_attr_ret_load_obj

#define vsf_pyal_class_attr_ret_load_obj (   __arg_name,
  __obj 
)     return (__obj)

◆ vsf_pyal_class_attr_ret_load_method

#define vsf_pyal_class_attr_ret_load_method (   __arg_name,
  __method 
)     return (__method)

◆ vsf_pyal_class_attr_ret_fail

#define vsf_pyal_class_attr_ret_fail (   __arg_name)     return VSF_PYAL_OBJ_NULL

◆ vsf_pyal_class_attr_ret_success

#define vsf_pyal_class_attr_ret_success (   __arg_name)     return VSF_PYAL_OBJ_NULL

◆ vsf_pyal_class_func_var_private_imp

#define vsf_pyal_class_func_var_private_imp (   __mod,
  __func,
  __ret_type,
  __min_arg,
  __max_arg,
  __arg_name 
)     __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))

◆ vsf_pyal_class_func_var_imp

#define vsf_pyal_class_func_var_imp (   __mod,
  __func,
  __ret_type,
  __min_arg,
  __max_arg,
  __arg_name 
)     __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_var(__arg_name))

◆ vsf_pyal_class_func_fix_imp

#define vsf_pyal_class_func_fix_imp (   __mod,
  __func,
  __func_type,
  __ret_type,
  ... 
)     __ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, ##__VA_ARGS__)

◆ vsf_pyal_class_func_keyword_imp

#define vsf_pyal_class_func_keyword_imp (   __mod,
  __func,
  __ret_type,
  __min_arg,
  __max_arg,
  __arg_name,
  ... 
)
Value:
__ret_type __mod ## _ ## __func(vsf_pyal_obj_t selfobj, vsf_pyal_funcarg_keyword(__arg_name)) {\
int __arg_name ## _args_num = pikaDict_getSize(__arg_name ## _args);

◆ vsf_pyal_class_func_keyword_imp_end

#define vsf_pyal_class_func_keyword_imp_end ( )    }

◆ vsf_pyal_class_func_call_var

#define vsf_pyal_class_func_call_var (   __mod,
  __func,
  __instobj,
  arg 
)     __mod ## _ ## __func(__instobj, vsf_pyal_funcarg_var_for_call(arg))

◆ vsf_pyal_class_func_call_fix

#define vsf_pyal_class_func_call_fix (   __mod,
  __func,
  __instobj,
  ... 
)     __mod ## _ ## __func(__instobj, ##__VA_ARGS__)

◆ vsf_pyal_class_declare

#define vsf_pyal_class_declare (   __mod,
  __class 
)
Value:
extern void __mod ## _ ## __class ## ___init__(vsf_pyal_obj_t unused, vsf_pyal_funcarg_var(__arg_name ## _args));\
extern vsf_pyal_obj_t New_ ## __mod ## _ ## __class(Args *args); \
extern const NativeProperty __mod ## _ ## __class ## NativeProp

◆ vsf_pyal_hash_string

#define vsf_pyal_hash_string (   __str)    hash_time33(__str)

◆ vsf_pyal_raise

#define vsf_pyal_raise (   __fmt,
  ... 
)
Value:
({ \
pika_platform_printf((__fmt), ##__VA_ARGS__); \
obj_setErrorCode(selfobj, -1); \
})

Typedef Documentation

◆ vsf_pyal_arg_t

typedef Arg* vsf_pyal_arg_t

◆ vsf_pyal_obj_t

typedef PikaObj* vsf_pyal_obj_t

◆ vsf_pyal_dict_key_t

typedef char* vsf_pyal_dict_key_t

Function Documentation

◆ __vsf_pyal_parse_tuple_keyword()

int __vsf_pyal_parse_tuple_keyword ( __vsf_pyal_keyword_parser_arg(arg)  ,
const char *  format,
  ... 
)
extern