
Eina_Future *_efl_io_manager_ls(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, void *paths_data, EflIoPath paths, Eina_Free_Cb paths_free_cb);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_ls, Eina_Future *, NULL, EFL_FUNC_CALL(path, paths_data, paths, paths_free_cb), const char *path, void *paths_data, EflIoPath paths, Eina_Free_Cb paths_free_cb);

Eina_Future *_efl_io_manager_direct_ls(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, Eina_Bool recursive, void *info_data, EflIoDirectInfo info, Eina_Free_Cb info_free_cb);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_direct_ls, Eina_Future *, NULL, EFL_FUNC_CALL(path, recursive, info_data, info, info_free_cb), const char *path, Eina_Bool recursive, void *info_data, EflIoDirectInfo info, Eina_Free_Cb info_free_cb);

Eina_Future *_efl_io_manager_stat_ls(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, Eina_Bool recursive, void *info_data, EflIoDirectInfo info, Eina_Free_Cb info_free_cb);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_stat_ls, Eina_Future *, NULL, EFL_FUNC_CALL(path, recursive, info_data, info, info_free_cb), const char *path, Eina_Bool recursive, void *info_data, EflIoDirectInfo info, Eina_Free_Cb info_free_cb);

Eina_Future *_efl_io_manager_xattr_ls(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, void *paths_data, EflIoPath paths, Eina_Free_Cb paths_free_cb);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_xattr_ls, Eina_Future *, NULL, EFL_FUNC_CALL(path, paths_data, paths, paths_free_cb), const char *path, void *paths_data, EflIoPath paths, Eina_Free_Cb paths_free_cb);

Eina_Future *_efl_io_manager_stat(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_stat, Eina_Future *, NULL, EFL_FUNC_CALL(path), const char *path);

Eina_Future *_efl_io_manager_xattr_set(Eo *obj, Efl_Io_Manager_Data *pd, const char *path, const char *attribute, Eina_Binbuf *data, Eina_Xattr_Flags flags);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV(efl_io_manager_xattr_set, Eina_Future *, NULL, EFL_FUNC_CALL(path, attribute, data, flags), const char *path, const char *attribute, Eina_Binbuf *data, Eina_Xattr_Flags flags);

Eina_Future *_efl_io_manager_xattr_get(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, const char *attribute);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_xattr_get, Eina_Future *, NULL, EFL_FUNC_CALL(path, attribute), const char *path, const char *attribute);

Eina_Future *_efl_io_manager_open(const Eo *obj, Efl_Io_Manager_Data *pd, const char *path, Eina_Bool shared);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_open, Eina_Future *, NULL, EFL_FUNC_CALL(path, shared), const char *path, Eina_Bool shared);

Eina_Future *_efl_io_manager_close(const Eo *obj, Efl_Io_Manager_Data *pd, Eina_File *file);

EIO_API EIO_API_WEAK EFL_FUNC_BODYV_CONST(efl_io_manager_close, Eina_Future *, NULL, EFL_FUNC_CALL(file), Eina_File *file);

static Eina_Bool
_efl_io_manager_class_initializer(Efl_Class *klass)
{
   const Efl_Object_Ops *opsp = NULL;

   const Efl_Object_Property_Reflection_Ops *ropsp = NULL;

#ifndef EFL_IO_MANAGER_EXTRA_OPS
#define EFL_IO_MANAGER_EXTRA_OPS
#endif

   EFL_OPS_DEFINE(ops,
      EFL_OBJECT_OP_FUNC(efl_io_manager_ls, _efl_io_manager_ls),
      EFL_OBJECT_OP_FUNC(efl_io_manager_direct_ls, _efl_io_manager_direct_ls),
      EFL_OBJECT_OP_FUNC(efl_io_manager_stat_ls, _efl_io_manager_stat_ls),
      EFL_OBJECT_OP_FUNC(efl_io_manager_xattr_ls, _efl_io_manager_xattr_ls),
      EFL_OBJECT_OP_FUNC(efl_io_manager_stat, _efl_io_manager_stat),
      EFL_OBJECT_OP_FUNC(efl_io_manager_xattr_set, _efl_io_manager_xattr_set),
      EFL_OBJECT_OP_FUNC(efl_io_manager_xattr_get, _efl_io_manager_xattr_get),
      EFL_OBJECT_OP_FUNC(efl_io_manager_open, _efl_io_manager_open),
      EFL_OBJECT_OP_FUNC(efl_io_manager_close, _efl_io_manager_close),
      EFL_IO_MANAGER_EXTRA_OPS
   );
   opsp = &ops;

   return efl_class_functions_set(klass, opsp, ropsp);
}

static const Efl_Class_Description _efl_io_manager_class_desc = {
   EO_VERSION,
   "Efl.Io.Manager",
   EFL_CLASS_TYPE_REGULAR,
   sizeof(Efl_Io_Manager_Data),
   _efl_io_manager_class_initializer,
   NULL,
   NULL
};

EFL_DEFINE_CLASS(efl_io_manager_class_get, &_efl_io_manager_class_desc, EFL_LOOP_CONSUMER_CLASS, NULL);
