forked from enlightenment/efl
eolian-cxx: Fixed C++ conversion for lists
Signed-off-by: Vitor Sousa <vitorsousasilva@gmail.com>
This commit is contained in:
parent
dff706f123
commit
890ce1f9cf
|
@ -35,6 +35,7 @@ type_from_eolian(Eolian_Type const& type)
|
|||
efl::eolian::eolian_type x;
|
||||
x.native = normalize_spaces(safe_str(::eolian_type_c_type_get(&type)));
|
||||
x.is_own = ::eolian_type_is_own(&type);
|
||||
x.is_const = ::eolian_type_is_const(&type);
|
||||
return x;
|
||||
}
|
||||
|
||||
|
|
|
@ -13,24 +13,25 @@ type_lookup_table
|
|||
{"Ecore_Task_Cb", eolian_type::callback_, {"Ecore.h"}},
|
||||
{"Ecore_Timeline_Cb", eolian_type::callback_, {"Ecore.h"}},
|
||||
{"Edje_Signal_Cb", eolian_type::callback_, {"Edje.h"}},
|
||||
{"Eina_Accessor *", eolian_type::complex_, false, "efl::eina::accessor", {"eina-cxx/eina_accessor.hh"}},
|
||||
{"Eina_Bool", eolian_type::simple_, false, "bool", {}},
|
||||
{"Eina_Bool *", eolian_type::simple_, false, "bool*", {}},
|
||||
{"Eina_Inlist *", eolian_type::complex_, false, "efl::eina::range_inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"Eina_Inlist *", eolian_type::complex_, true, "efl::eina::inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"Eina_Iterator *", eolian_type::complex_, false, "efl::eina::iterator", {"eina-cxx/eina_iterator.hh"}},
|
||||
{"Eina_List *", eolian_type::complex_, false, "efl::eina::range_list", {"eina-cxx/eina_list.hh"}},
|
||||
{"Eina_List *", eolian_type::complex_, true, "efl::eina::list", {"eina-cxx/eina_list.hh"}},
|
||||
{"Eina_Accessor *", eolian_type::complex_, false, false, "efl::eina::accessor", {"eina-cxx/eina_accessor.hh"}},
|
||||
{"Eina_Bool", eolian_type::simple_, false, false, "bool", {}},
|
||||
{"Eina_Bool *", eolian_type::simple_, false, false, "bool*", {}},
|
||||
{"Eina_Inlist *", eolian_type::complex_, false, false, "efl::eina::range_inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"Eina_Inlist *", eolian_type::complex_, false, true, "efl::eina::inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"Eina_Iterator *", eolian_type::complex_, false, false, "efl::eina::iterator", {"eina-cxx/eina_iterator.hh"}},
|
||||
{"Eina_List *", eolian_type::complex_, false, false, "efl::eina::range_list", {"eina-cxx/eina_list.hh"}},
|
||||
{"Eina_List *", eolian_type::complex_, false, true, "efl::eina::list", {"eina-cxx/eina_list.hh"}},
|
||||
{"const Eina_List *", eolian_type::complex_, true, false, "efl::eina::crange_list", {"eina-cxx/eina_list.hh"}},
|
||||
{"Eio_Filter_Direct_Cb", eolian_type::callback_, {"Eio.h"}},
|
||||
{"Emodel *", eolian_type::simple_, false, "emodel", {"Emodel.hh"}},
|
||||
{"Eo *", eolian_type::simple_, true, "efl::eo::base", {"eo_base.hh"}},
|
||||
{"Eo *", eolian_type::simple_, false, "efl::eo::base", {"eo_base.hh"}},
|
||||
{"Emodel *", eolian_type::simple_, false, false, "emodel", {"Emodel.hh"}},
|
||||
{"Eo *", eolian_type::simple_, false, true, "efl::eo::base", {"eo_base.hh"}},
|
||||
{"Eo *", eolian_type::simple_, false, false, "efl::eo::base", {"eo_base.hh"}},
|
||||
//{"Evas_Object_Box_Layout", eolian_type::callback_, {"Evas.h"}},
|
||||
{"Evas_Object *", eolian_type::simple_, false, "evas::object", {"canvas/evas_object.eo.hh"}},
|
||||
{"char *", eolian_type::simple_, true, "std::unique_ptr<char*>", {"memory"}},
|
||||
{"const Eina_Inlist *", eolian_type::complex_, false, "efl::eina::range_inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"const Eina_List *", eolian_type::complex_, false, "efl::eina::crange_list", {"eina-cxx/eina_ptrlist.hh"}},
|
||||
{"const char *", eolian_type::simple_, false, "std::string", {"string"}}
|
||||
{"Evas_Object *", eolian_type::simple_, false, false, "evas::object", {"canvas/evas_object.eo.hh"}},
|
||||
{"char *", eolian_type::simple_, false, true, "std::unique_ptr<char*>", {"memory"}},
|
||||
{"const Eina_Inlist *", eolian_type::complex_, false, false, "efl::eina::range_inlist", {"eina-cxx/eina_inlist.hh"}},
|
||||
{"const Eina_List *", eolian_type::complex_, false, false, "efl::eina::range_list", {"eina-cxx/eina_ptrlist.hh"}},
|
||||
{"const char *", eolian_type::simple_, false, false, "std::string", {"string"}},
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ struct eolian_type
|
|||
eolian_type()
|
||||
: native("")
|
||||
, category(unknown_)
|
||||
, is_const(false)
|
||||
, is_own(false)
|
||||
, binding()
|
||||
, includes()
|
||||
|
@ -38,11 +39,13 @@ struct eolian_type
|
|||
|
||||
eolian_type(std::string native_,
|
||||
category_type category_,
|
||||
bool is_const_,
|
||||
bool is_own_,
|
||||
std::string binding_,
|
||||
includes_container_type includes_)
|
||||
: native(native_)
|
||||
, category(category_)
|
||||
, is_const(is_const_)
|
||||
, is_own(is_own_)
|
||||
, binding(binding_)
|
||||
, includes(includes_)
|
||||
|
@ -54,13 +57,14 @@ struct eolian_type
|
|||
eolian_type(std::string native_,
|
||||
category_type category_,
|
||||
includes_container_type const& includes_)
|
||||
: eolian_type(native_, category_, false, "", includes_)
|
||||
: eolian_type(native_, category_, false, false, "", includes_)
|
||||
{
|
||||
assert(category == callback_);
|
||||
}
|
||||
|
||||
std::string native;
|
||||
category_type category;
|
||||
bool is_const;
|
||||
bool is_own;
|
||||
std::string binding;
|
||||
includes_container_type includes;
|
||||
|
@ -69,7 +73,7 @@ struct eolian_type
|
|||
typedef std::vector<eolian_type> eolian_type_instance;
|
||||
|
||||
const efl::eolian::eolian_type
|
||||
void_type { "void", efl::eolian::eolian_type::simple_, false, "", {} };
|
||||
void_type { "void", efl::eolian::eolian_type::simple_, false, false, "", {} };
|
||||
|
||||
inline bool
|
||||
type_is_void(eolian_type_instance const& type)
|
||||
|
|
Loading…
Reference in New Issue