HomePhabricator

eolian_mono: fix to call mixin's method in inherited class

Authored by Jaehyun_Cho on Jun 24 2019, 2:43 AM.

Description

eolian_mono: fix to call mixin's method in inherited class

Summary:
Eo mixin is converted to C# interface and C# concrete class.
When the mixin's method is called, the delegate function of Eo mixin's
C# concrete class is called.

Now, the delegate function of Eo mixin's C# concrete class calls C#
method with casting to Eo mixin's C# concrete class type.
e.g. ((IClickableConcrete)ws.Target).Press(button);

If a user defined C# class implements Eo mixin's C# interface, the
implemented method cannot be called because the user defined C# class
type is not the same as Eo mixin's C# concrete class.

To resolve the above issue, the type casting code is fixed.

Reviewers: felipealmeida, lauromoura, vitor.sousa, YOhoho

Reviewed By: YOhoho

Subscribers: bu5hm4n, YOhoho, cedric, reviewers, committers

Tags: efl

Differential Revision: https://phab.enlightenment.org/D9111

Details