namespace elm { 
inline ::efl::eolian::return_traits<bool>::type List::horizontal_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_horizontal_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::horizontal_set( ::efl::eolian::in_traits<bool>::type horizontal) const
{
    ::elm_obj_list_horizontal_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(horizontal));
}
inline ::efl::eolian::return_traits<Elm_Object_Select_Mode>::type List::select_mode_get() const
{
   Elm_Object_Select_Mode __return_value =  ::elm_obj_list_select_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_Object_Select_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::select_mode_set( ::efl::eolian::in_traits<Elm_Object_Select_Mode>::type mode) const
{
    ::elm_obj_list_select_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_Object_Select_Mode,  ::efl::eolian::in_traits<Elm_Object_Select_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits<bool>::type List::focus_on_selection_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_focus_on_selection_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::focus_on_selection_set( ::efl::eolian::in_traits<bool>::type enabled) const
{
    ::elm_obj_list_focus_on_selection_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(enabled));
}
inline ::efl::eolian::return_traits<bool>::type List::multi_select_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_multi_select_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::multi_select_set( ::efl::eolian::in_traits<bool>::type multi) const
{
    ::elm_obj_list_multi_select_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(multi));
}
inline ::efl::eolian::return_traits<Elm_Object_Multi_Select_Mode>::type List::multi_select_mode_get() const
{
   Elm_Object_Multi_Select_Mode __return_value =  ::elm_obj_list_multi_select_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_Object_Multi_Select_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::multi_select_mode_set( ::efl::eolian::in_traits<Elm_Object_Multi_Select_Mode>::type mode) const
{
    ::elm_obj_list_multi_select_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_Object_Multi_Select_Mode,  ::efl::eolian::in_traits<Elm_Object_Multi_Select_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits<Elm_List_Mode>::type List::mode_get() const
{
   Elm_List_Mode __return_value =  ::elm_obj_list_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_List_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::mode_set( ::efl::eolian::in_traits<Elm_List_Mode>::type mode) const
{
    ::elm_obj_list_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_List_Mode,  ::efl::eolian::in_traits<Elm_List_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::selected_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_selected_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type List::items_get() const
{
   const Eina_List * __return_value =  ::elm_obj_list_items_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::first_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_first_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type List::selected_items_get() const
{
   const Eina_List * __return_value =  ::elm_obj_list_selected_items_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::last_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_last_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_insert_before( ::efl::eolian::in_traits< ::elm::widget::Item>::type before,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_insert_before(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Elm_Widget_Item*,  ::efl::eolian::in_traits< ::elm::widget::Item>::type>(before)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::go() const
{
    ::elm_obj_list_go(this->_eo_ptr());
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_insert_after( ::efl::eolian::in_traits< ::elm::widget::Item>::type after,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_insert_after(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Elm_Widget_Item*,  ::efl::eolian::in_traits< ::elm::widget::Item>::type>(after)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::at_xy_item_get( ::efl::eolian::in_traits<Evas_Coord>::type x,  ::efl::eolian::in_traits<Evas_Coord>::type y,  ::efl::eolian::out_traits<int>::type posret) const
{
   int __out_param_posret = {};
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_at_xy_item_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Evas_Coord,  ::efl::eolian::in_traits<Evas_Coord>::type>(x)
      ,  ::efl::eolian::convert_to_c<Evas_Coord,  ::efl::eolian::in_traits<Evas_Coord>::type>(y)
      , & __out_param_posret);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(posret, __out_param_posret);
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_append( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_append(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_prepend( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_prepend(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::clear() const
{
    ::elm_obj_list_clear(this->_eo_ptr());
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_sorted_insert( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data,  ::efl::eolian::in_traits<Eina_Compare_Cb>::type cmp_func) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_sorted_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data)
      ,  ::efl::eolian::convert_to_c<Eina_Compare_Cb,  ::efl::eolian::in_traits<Eina_Compare_Cb>::type>(cmp_func));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
} 
namespace eo_cxx {
namespace elm { 
inline ::efl::eolian::return_traits<bool>::type List::horizontal_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_horizontal_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::horizontal_set( ::efl::eolian::in_traits<bool>::type horizontal) const
{
    ::elm_obj_list_horizontal_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(horizontal));
}
inline ::efl::eolian::return_traits<Elm_Object_Select_Mode>::type List::select_mode_get() const
{
   Elm_Object_Select_Mode __return_value =  ::elm_obj_list_select_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_Object_Select_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::select_mode_set( ::efl::eolian::in_traits<Elm_Object_Select_Mode>::type mode) const
{
    ::elm_obj_list_select_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_Object_Select_Mode,  ::efl::eolian::in_traits<Elm_Object_Select_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits<bool>::type List::focus_on_selection_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_focus_on_selection_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::focus_on_selection_set( ::efl::eolian::in_traits<bool>::type enabled) const
{
    ::elm_obj_list_focus_on_selection_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(enabled));
}
inline ::efl::eolian::return_traits<bool>::type List::multi_select_get() const
{
   Eina_Bool __return_value =  ::elm_obj_list_multi_select_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::multi_select_set( ::efl::eolian::in_traits<bool>::type multi) const
{
    ::elm_obj_list_multi_select_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Eina_Bool,  ::efl::eolian::in_traits<bool>::type>(multi));
}
inline ::efl::eolian::return_traits<Elm_Object_Multi_Select_Mode>::type List::multi_select_mode_get() const
{
   Elm_Object_Multi_Select_Mode __return_value =  ::elm_obj_list_multi_select_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_Object_Multi_Select_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::multi_select_mode_set( ::efl::eolian::in_traits<Elm_Object_Multi_Select_Mode>::type mode) const
{
    ::elm_obj_list_multi_select_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_Object_Multi_Select_Mode,  ::efl::eolian::in_traits<Elm_Object_Multi_Select_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits<Elm_List_Mode>::type List::mode_get() const
{
   Elm_List_Mode __return_value =  ::elm_obj_list_mode_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Elm_List_Mode>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::mode_set( ::efl::eolian::in_traits<Elm_List_Mode>::type mode) const
{
    ::elm_obj_list_mode_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Elm_List_Mode,  ::efl::eolian::in_traits<Elm_List_Mode>::type>(mode));
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::selected_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_selected_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type List::items_get() const
{
   const Eina_List * __return_value =  ::elm_obj_list_items_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::first_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_first_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type List::selected_items_get() const
{
   const Eina_List * __return_value =  ::elm_obj_list_selected_items_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<  ::efl::eina::range_list< ::elm::widget::Item>>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::last_item_get() const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_last_item_get(this->_eo_ptr());
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_insert_before( ::efl::eolian::in_traits< ::elm::widget::Item>::type before,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_insert_before(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Elm_Widget_Item*,  ::efl::eolian::in_traits< ::elm::widget::Item>::type>(before)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::go() const
{
    ::elm_obj_list_go(this->_eo_ptr());
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_insert_after( ::efl::eolian::in_traits< ::elm::widget::Item>::type after,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_insert_after(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Elm_Widget_Item*,  ::efl::eolian::in_traits< ::elm::widget::Item>::type>(after)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::at_xy_item_get( ::efl::eolian::in_traits<Evas_Coord>::type x,  ::efl::eolian::in_traits<Evas_Coord>::type y,  ::efl::eolian::out_traits<int>::type posret) const
{
   int __out_param_posret = {};
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_at_xy_item_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Evas_Coord,  ::efl::eolian::in_traits<Evas_Coord>::type>(x)
      ,  ::efl::eolian::convert_to_c<Evas_Coord,  ::efl::eolian::in_traits<Evas_Coord>::type>(y)
      , & __out_param_posret);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(posret, __out_param_posret);
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_append( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_append(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_prepend( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_prepend(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type List::clear() const
{
    ::elm_obj_list_clear(this->_eo_ptr());
}
inline ::efl::eolian::return_traits< ::elm::widget::Item>::type List::item_sorted_insert( ::efl::eolian::in_traits< ::efl::eina::string_view>::type label,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type icon,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type end,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type func,  ::efl::eolian::in_traits<void const*>::type data,  ::efl::eolian::in_traits<Eina_Compare_Cb>::type cmp_func) const
{
    ::Elm_Widget_Item* __return_value =  ::elm_obj_list_item_sorted_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(label)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(icon)
      ,  ::efl::eolian::convert_to_c< ::Efl_Canvas_Object*,  ::efl::eolian::in_traits< ::efl::canvas::Object>::type>(end)
      ,  ::efl::eolian::convert_to_c<Evas_Smart_Cb,  ::efl::eolian::in_traits< ::efl::eina::optional<Evas_Smart_Cb>>::type>(func)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data)
      ,  ::efl::eolian::convert_to_c<Eina_Compare_Cb,  ::efl::eolian::in_traits<Eina_Compare_Cb>::type>(cmp_func));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::elm::widget::Item>::type>(__return_value);
}
inline elm::List::operator ::elm::List() const { return *static_cast< ::elm::List const*>(static_cast<void const*>(this)); }
inline elm::List::operator ::elm::List&() { return *static_cast< ::elm::List*>(static_cast<void*>(this)); }
inline elm::List::operator ::elm::List const&() const { return *static_cast< ::elm::List const*>(static_cast<void const*>(this)); }
} }

