/* This header file is parsed by scripts to generate code. The following simple standards must be followed: - One token for the return type (mlp_context*, not mlp_context *) - One function definition per line, one line per function definition... */ #define MLP_IFACE #define MLP_IFACE_V #define const_char const char /* mlp_context api */ mlp_context* mlp_context_new () ; int mlp_context_has_error (const mlp_context *ctx) ; mlp_error mlp_context_get_error (const mlp_context *ctx) ; const_char* mlp_context_get_error_msg (const mlp_context *ctx) ; void mlp_context_set_error (mlp_context *ctx, mlp_error error, const char *fmt, ...) ; void mlp_context_clear_error (mlp_context *ctx) ; void mlp_context_delete (mlp_context *ctx) ; /* mlp api */ void mlp_debug (int level, const char *fmt, ...) ; void _mlp_debug (const char *name, int level, const char *msg) ; int mlp_debug_on (int level) ; int mlp_debug_level () ; /* mlp_value api */ mlp_value* mlp_value_new_bool (char val) ; mlp_value* mlp_value_new_long (long val) ; mlp_value* mlp_value_new_double (double val) ; mlp_value* mlp_value_new_char (char val) ; mlp_value* mlp_value_new_string (const char *val) ; mlp_value* mlp_value_new_object (mlp_object *val) ; mlp_value* mlp_value_new_exception (mlp_exception *val) ; void mlp_value_delete (mlp_context *ctx, mlp_value *val) ; mlp_type mlp_value_get_type (const mlp_value *val) ; char mlp_value_get_bool (const mlp_value *val) ; long mlp_value_get_long (const mlp_value *val) ; double mlp_value_get_double (const mlp_value *val) ; char mlp_value_get_char (const mlp_value *val) ; const_char* mlp_value_get_string (const mlp_value *val) ; /* char* mlp_value_take_string (mlp_value *val) ; */ /* mlp_object* mlp_value_get_object (const mlp_value *val) ; */ mlp_object* mlp_value_take_object (mlp_value *val) ; /* mlp_exception* mlp_value_get_exception (const mlp_value *val) ; */ mlp_exception* mlp_value_take_exception (mlp_value *val) ; const_char* mlp_value_to_string (mlp_value *val) ; mlp_value** mlp_value_array_new (int n) ; void mlp_value_array_delete (mlp_context *ctx, mlp_value **vals) ; /* mlp_object api */ mlp_runtime* mlp_object_get_runtime (const mlp_object *obj) ; const_char* mlp_object_get_class (const mlp_object *obj) ; void* mlp_object_get_handle (const mlp_object *obj) ; const_char* mlp_object_to_string (mlp_object* obj) ; MLP_IFACE mlp_value* mlp_object_new (mlp_context *ctx, mlp_runtime* rt, const char *class, mlp_value **args, int nb_args, const char *hint) ; MLP_IFACE mlp_value* mlp_object_call_method (mlp_context *ctx, mlp_object *obj, const char *method, mlp_value **args, int nb_args, const char *hint) ; MLP_IFACE void mlp_object_delete (mlp_context *ctx, mlp_object *obj) ; /* mlp_array api */ /* mlp_runtime* mlp_array_get_runtime (const mlp_array *arr) ; mlp_type mlp_array_get_type (const mlp_array *arr) ; int mlp_array_get_size (const mlp_array *arr) ; void* mlp_array_get_handle (const mlp_array *arr) ; const_char* mlp_array_to_string (mlp_array* arr) ; #MLP_IFACE mlp_value* mlp_array_new (mlp_context *ctx, mlp_runtime* rt, mlp_type type, int size) ; #MLP_IFACE mlp_value* mlp_array_get_element (mlp_context *ctx, mlp_array* arr, int idx) ; #MLP_IFACE void mlp_array_set_element (mlp_context *ctx, mlp_array* arr, int idx, mlp_value *e) ; #MLP_IFACE void mlp_array_delete (mlp_context *ctx, mlp_array *arr) ; */ /* mlp_exception api */ mlp_runtime* mlp_exception_get_runtime (const mlp_exception *e) ; const_char* mlp_exception_get_massage (const mlp_exception *e) ; mlp_value* mlp_exception_get_value (const mlp_exception *e) ; const_char* mlp_exception_to_string (mlp_exception *e) ; void mlp_exception_delete (mlp_context *ctx, mlp_exception *e) ; /* mlp_language api */ mlp_language* mlp_language_init (mlp_context *ctx, const char *name) ; void mlp_language_delete (mlp_context *ctx, mlp_language *lang) ; const_char* mlp_language_get_name (const mlp_language *lang) ; const_char* mlp_language_get_dir (const mlp_language *lang) ; /* mlp_runtime api */ MLP_IFACE_V mlp_runtime* mlp_runtime_new (mlp_context *ctx, mlp_language *lang) ; MLP_IFACE void mlp_runtime_delete (mlp_context *ctx, mlp_runtime* rt) ; mlp_language* mlp_runtime_get_language (const mlp_runtime *rt) ; MLP_IFACE void mlp_runtime_load_library (mlp_context *ctx, mlp_runtime* rt, const char *lib) ;