aboutsummaryrefslogtreecommitdiffstats
path: root/src/Makefile_Efl_Mono.am
diff options
context:
space:
mode:
authorLauro Moura <lauromoura@expertisesolutions.com.br>2018-03-08 15:43:14 -0800
committerCedric BAIL <cedric@osg.samsung.com>2018-03-08 15:46:45 -0800
commit067a8baffa692668acc0f19c91e2198195f480e2 (patch)
treea77e8608e2e3fce0f7ea3c0f745b3739844c3995 /src/Makefile_Efl_Mono.am
parenteo: ERR some warning when illegally using invalidated object. (diff)
downloadefl-067a8baffa692668acc0f19c91e2198195f480e2.tar.gz
csharp: generate helper constructors for structs.
Summary: C# does not have a literal form for structs (like C++'s {} aggregate initialization). Before this commit the user would need to explicitly instantiate a struct and assign the required values to it, like: eina.Size2D size; size.W = width; size.H = height; widget.SetSize(size); As a workaround, this commit generates helper constructor with parameters corresponding to the struct fields in the order they are declared. These parameters have default values if one does not want to explicitly initialize all fields directly. With these constructs, the above code could be translated to: widget.SetSize(new eina.Size2D(width, height)); It should be noted that the constructed struct will live on the managed memory (GC) instead of the stack. Test Plan: run "make check" Reviewers: felipealmeida Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D5838 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Diffstat (limited to 'src/Makefile_Efl_Mono.am')
-rw-r--r--src/Makefile_Efl_Mono.am1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/Makefile_Efl_Mono.am b/src/Makefile_Efl_Mono.am
index 9344fbda2f..e442d09fb5 100644
--- a/src/Makefile_Efl_Mono.am
+++ b/src/Makefile_Efl_Mono.am
@@ -78,6 +78,7 @@ bin_eolian_mono_eolian_mono_SOURCES = \
bin/eolian_mono/eolian/mono/function_registration.hh \
bin/eolian_mono/eolian/mono/enum_definition.hh \
bin/eolian_mono/eolian/mono/struct_definition.hh \
+ bin/eolian_mono/eolian/mono/struct_fields.hh \
bin/eolian_mono/eolian/mono/parameter.hh \
bin/eolian_mono/eolian/mono/utils.hh \
bin/eolian_mono/eolian/mono/using_decl.hh \