namespace efl { namespace text { 
inline ::efl::eolian::return_traits< ::efl::eina::string_view>::type Annotate::annotation_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation) const
{
   const char * __return_value =  ::efl_text_annotation_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::efl::eina::string_view>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::annotation_set( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Eina_Bool __return_value =  ::efl_text_annotation_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::cursor_object_item_annotation_get( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type cur) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_cursor_object_item_annotation_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(cur));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::efl::eina::iterator<Efl_Text_Annotate_Annotation const*>>::type Annotate::range_annotations_get( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end) const
{
   Eina_Iterator * __return_value =  ::efl_text_range_annotations_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::efl::eina::iterator<Efl_Text_Annotate_Annotation const*>>::type>(__return_value);
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::annotation_insert( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_annotation_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::annotation_del( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation) const
{
   Eina_Bool __return_value =  ::efl_text_annotation_del(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::object_item_geometry_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type an,  ::efl::eolian::out_traits<int>::type x,  ::efl::eolian::out_traits<int>::type y,  ::efl::eolian::out_traits<int>::type w,  ::efl::eolian::out_traits<int>::type h) const
{
   int __out_param_x = {};
   int __out_param_y = {};
   int __out_param_w = {};
   int __out_param_h = {};
   Eina_Bool __return_value =  ::efl_text_object_item_geometry_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(an)
      , & __out_param_x
      , & __out_param_y
      , & __out_param_w
      , & __out_param_h);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(x, __out_param_x);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(y, __out_param_y);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(w, __out_param_w);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(h, __out_param_h);
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type Annotate::annotation_positions_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end) const
{
    ::efl_text_annotation_positions_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end));
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::cursor_object_item_insert( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type cur,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_cursor_object_item_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(cur)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
} } 
namespace eo_cxx {
namespace efl { namespace text { 
inline ::efl::eolian::return_traits< ::efl::eina::string_view>::type Annotate::annotation_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation) const
{
   const char * __return_value =  ::efl_text_annotation_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::efl::eina::string_view>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::annotation_set( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Eina_Bool __return_value =  ::efl_text_annotation_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::cursor_object_item_annotation_get( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type cur) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_cursor_object_item_annotation_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(cur));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
inline ::efl::eolian::return_traits< ::efl::eina::iterator<Efl_Text_Annotate_Annotation const*>>::type Annotate::range_annotations_get( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end) const
{
   Eina_Iterator * __return_value =  ::efl_text_range_annotations_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits< ::efl::eina::iterator<Efl_Text_Annotate_Annotation const*>>::type>(__return_value);
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::annotation_insert( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_annotation_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::annotation_del( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation) const
{
   Eina_Bool __return_value =  ::efl_text_annotation_del(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<bool>::type Annotate::object_item_geometry_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type an,  ::efl::eolian::out_traits<int>::type x,  ::efl::eolian::out_traits<int>::type y,  ::efl::eolian::out_traits<int>::type w,  ::efl::eolian::out_traits<int>::type h) const
{
   int __out_param_x = {};
   int __out_param_y = {};
   int __out_param_w = {};
   int __out_param_h = {};
   Eina_Bool __return_value =  ::efl_text_object_item_geometry_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(an)
      , & __out_param_x
      , & __out_param_y
      , & __out_param_w
      , & __out_param_h);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(x, __out_param_x);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(y, __out_param_y);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(w, __out_param_w);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<int>::type, int>(h, __out_param_h);
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<bool>::type>(__return_value);
}
inline ::efl::eolian::return_traits<void>::type Annotate::annotation_positions_get( ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type annotation,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type start,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type end) const
{
    ::efl_text_annotation_positions_get(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<const Efl_Text_Annotate_Annotation *,  ::efl::eolian::in_traits<Efl_Text_Annotate_Annotation const*>::type>(annotation)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(start)
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(end));
}
inline ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type Annotate::cursor_object_item_insert( ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type cur,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type format) const
{
   Efl_Text_Annotate_Annotation * __return_value =  ::efl_text_cursor_object_item_insert(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c<Efl_Text_Cursor_Cursor *,  ::efl::eolian::in_traits<Efl_Text_Cursor_Cursor const*>::type>(cur)
      ,  ::efl::eolian::convert_to_c<const char *,  ::efl::eolian::in_traits< ::efl::eina::string_view>::type>(format));
   return ::efl::eolian::convert_to_return< ::efl::eolian::return_traits<Efl_Text_Annotate_Annotation*>::type>(__return_value);
}
inline efl::text::Annotate::operator ::efl::text::Annotate() const { return *static_cast< ::efl::text::Annotate const*>(static_cast<void const*>(this)); }
inline efl::text::Annotate::operator ::efl::text::Annotate&() { return *static_cast< ::efl::text::Annotate*>(static_cast<void*>(this)); }
inline efl::text::Annotate::operator ::efl::text::Annotate const&() const { return *static_cast< ::efl::text::Annotate const*>(static_cast<void const*>(this)); }
} } }

