forked from enlightenment/efl
dfb856158c
Summary: Eolian allows non-public members in interfaces and mixins (usually @protected). As both kinds are converted to C# interfaces, this causes problem as non-public members are forbidden in C# interfaces. This commit changes eolian_mono by removing those members from the C# interfaces. If a generated class implements the interface, the method is generated as if it were a protected member of the class directly. For mixed properties like `Efl.Io.Reader.CanRead { get; set @protected; }`, the interface has only the public getter and the the implementing class has both the public getter and the protected setter. With this, C# devs won't be able to directly implement protected Eo methods from interfaces. (But this really does not make sense from the C# point of view). ref T7494 Reviewers: segfaultxavi, felipealmeida, YOhoho Reviewed By: YOhoho Subscribers: cedric, brunobelo, Jaehyun_Cho, #reviewers, woohyun, #committers Tags: #efl Maniphest Tasks: T7494 Differential Revision: https://phab.enlightenment.org/D9800 |
||
---|---|---|
.. | ||
.gitignore | ||
Bind.cs | ||
Factory.cs | ||
GenericModel.cs | ||
UserModel.cs | ||
efl_all.cs | ||
efl_csharp_application.cs | ||
efl_libs.cs.in | ||
efl_libs.csv.in | ||
map_generate.sh | ||
meson.build |