Page MenuHomePhabricator

C#: Make NativeClass and NativeHandle internal for C# 8
Needs ReviewPublic

Authored by felipealmeida on Feb 4 2020, 5:04 PM.

Diff Detail

rEFL core/efl
Lint OK
No Unit Test Coverage
Build Status
Buildable 16072
felipealmeida created this revision.Feb 4 2020, 5:04 PM

It seems that this patch has no reviewers specified. If you are unsure who can review your patch, please check this wiki page and see if anyone can be added:

felipealmeida requested review of this revision.Feb 4 2020, 5:04 PM
jptiz added a comment.Feb 14 2020, 4:25 PM

Got the following build error for efl_mono.dll:

src/bindings/mono/eina_mono/eina_value.cs(3564,86): error CS1061: Type `Efl.Object' does not contain a definition for `NativeHandle' and no extension method `NativeHandle' of type `Efl.Object' could be found. Are you missing an assembly reference?
src/bindings/mono/efl_object.eo.cs(128,35): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings

The region:

3561             case ValueType.Object:
3562                 {
3563                     var x = (Efl.Object) o;
3564                     return eina_value_container_insert_wrapper_ptr(this.Handle, p, x.NativeHandle);                                                                                                                                                                                                                                                                                     
3565                 }
felipealmeida edited the summary of this revision. (Show Details)

Fixed eina_value Insert new object handling

Is it interesting to have NativeHandle be internal for DotNet when using C# 8.0? This can be done in C# 8 because they added access modifiers for interfaces in C# 8. But can't be done for older language revisions.