felipealmeida pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bde4b6e9dfd01348c0aa81bd2bf625e8d9ee5e50
commit bde4b6e9dfd01348c0aa81bd2bf625e8d9ee5e50 Author: Felipe Magno de Almeida <[email protected]> Date: Wed Jul 16 20:13:46 2014 -0300 eolian-cxx: Added eo_base extension_inheritance Added eo::base as a partial specialization for extension inheritance, since eo::base is not generated. --- src/bindings/eo_cxx/eo_base.hh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/bindings/eo_cxx/eo_base.hh b/src/bindings/eo_cxx/eo_base.hh index a99d614..cdb8e64 100644 --- a/src/bindings/eo_cxx/eo_base.hh +++ b/src/bindings/eo_cxx/eo_base.hh @@ -230,6 +230,27 @@ inline bool operator!=(base const& lhs, base const& rhs) return !(lhs == rhs); } +namespace detail { + +template <typename T> +struct extension_inheritance; + +template<> +struct extension_inheritance<base> +{ + template <typename T> + struct type + { + operator base() const + { + return base(eo_ref(static_cast<T const*>(this)->_eo_ptr())); + } + + }; +}; + +} + /// @brief Downcast @p U to @p T. /// /// @param T An <em>EO C++ Class</em>. --
