efl-js: JavaScript Eolian binding
authorFelipe Magno de Almeida <felipe@expertisesolutions.com.br>
Mon, 1 Sep 2014 18:08:49 +0000 (15:08 -0300)
committerFelipe Magno de Almeida <felipe@expertisesolutions.com.br>
Thu, 24 Dec 2015 01:59:40 +0000 (23:59 -0200)
commita3db1dddd3ba67c81118f7f2c0bc753dc8aac551
tree233ee1be7bfa299bff560207135d20940c4e411f
parent1a3cb45f1cc7fdf8d481879e6bd7349d9cb0b3fa
efl-js: JavaScript Eolian binding

To configure efl sources with bindings to use in nodejs add ––with-js=nodejs in configure flags to generate node files

$ configure --with-js=nodejs

and compile normally with:

$ make
$ make install

To use, you have to require efl:

efl = require('efl')

The bindings is divided in two parts: generated and manually
written. The generation uses the Eolian library for parsing Eo files
and generate C++ code that is compiled against V8 interpreter library
to create a efl.node file that can be required in a node.js instance.

@feature
141 files changed:
.gitignore
Makefile.am
configure.ac
pc/.gitignore
pc/efl-js.pc.in [new file with mode: 0644]
pc/eina-js.pc.in [new file with mode: 0644]
pc/eo-js.pc.in [new file with mode: 0644]
pc/eolian-js.pc.in [new file with mode: 0644]
pc/evas.pc.in
src/Makefile.am
src/Makefile_Ecore.am
src/Makefile_Ecore_Audio.am
src/Makefile_Ecore_Con.am
src/Makefile_Ecore_Js.am [new file with mode: 0644]
src/Makefile_Edje.am
src/Makefile_Efl.am
src/Makefile_Efl_Js.am [new file with mode: 0644]
src/Makefile_Eina_Cxx.am
src/Makefile_Emotion.am
src/Makefile_Eo.am
src/Makefile_Eolian_Js.am [new file with mode: 0644]
src/Makefile_Eolian_Js_Helper.am [new file with mode: 0644]
src/Makefile_Evas.am
src/bin/efl_js/efljslaunch [new file with mode: 0755]
src/bin/efl_js/efljslaunch.desktop [new file with mode: 0644]
src/bin/efl_js/efljslaunch.xml [new file with mode: 0644]
src/bin/efl_js/efljspack [new file with mode: 0755]
src/bin/efl_js/launcher_main.cc [new file with mode: 0644]
src/bin/eolian_js/.gitignore [new file with mode: 0644]
src/bin/eolian_js/eolian/class.hh [new file with mode: 0644]
src/bin/eolian_js/eolian/js/domain.hh [new file with mode: 0644]
src/bin/eolian_js/eolian/js/format.hh [new file with mode: 0644]
src/bin/eolian_js/main.cc [new file with mode: 0644]
src/bindings/eina_cxx/Eina.hh
src/bindings/eina_cxx/eina_accessor.hh
src/bindings/eina_cxx/eina_array.hh
src/bindings/eina_cxx/eina_clone_allocators.hh
src/bindings/eina_cxx/eina_function.hh [new file with mode: 0644]
src/bindings/eina_cxx/eina_integer_sequence.hh
src/bindings/eina_cxx/eina_list.hh
src/bindings/eina_cxx/eina_logical.hh [new file with mode: 0644]
src/bindings/eina_cxx/eina_pp.hh [new file with mode: 0644]
src/bindings/eina_cxx/eina_ptrarray.hh
src/bindings/eina_cxx/eina_ptrlist.hh
src/bindings/eina_cxx/eina_range_types.hh
src/bindings/eina_cxx/eina_tuple.hh
src/bindings/eina_cxx/eina_tuple_c.hh [new file with mode: 0644]
src/bindings/eina_cxx/eina_type_traits.hh
src/bindings/eldbus_cxx/eldbus_freedesktop.hh
src/bindings/eo_cxx/eo_concrete.hh
src/bindings/js/ecore_js/Ecore_Js.hh [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_animator.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_event.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_idle.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_init.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_job.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_mainloop.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_poller.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_throttle.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_timer.cc [new file with mode: 0644]
src/bindings/js/ecore_js/ecore_js_timer.hh [new file with mode: 0644]
src/bindings/js/efl_js/Efl_Js.hh [new file with mode: 0644]
src/bindings/js/efl_js/efl_js.cc [new file with mode: 0644]
src/bindings/js/eina_js/Eina_Js.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_accessor.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_accessor.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_array.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_compatibility.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_compatibility.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_container.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_container.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_error.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_error.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_get_value.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_get_value_from_c.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_iterator.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_iterator.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_list.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_log.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_log.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_node.hh [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_value.cc [new file with mode: 0644]
src/bindings/js/eina_js/eina_js_value.hh [new file with mode: 0644]
src/bindings/js/eio_js/Eio_Js.hh [new file with mode: 0644]
src/bindings/js/eio_js/eio_js.cc [new file with mode: 0644]
src/bindings/js/eldbus_js/Eldbus_Js.hh [new file with mode: 0644]
src/bindings/js/eldbus_js/eldbus_js_connection.cc [new file with mode: 0644]
src/bindings/js/eldbus_js/eldbus_js_core.cc [new file with mode: 0644]
src/bindings/js/eldbus_js/eldbus_js_message.cc [new file with mode: 0644]
src/bindings/js/eldbus_js/eldbus_js_object_mapper.cc [new file with mode: 0644]
src/bindings/js/eldbus_js/eldbus_js_util.hh [new file with mode: 0644]
src/bindings/js/eo_js/Eo_Js.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_call_function.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_construct_from_eo.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_constructor.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_direction.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_event.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_namespace.hh [new file with mode: 0644]
src/bindings/js/eo_js/eo_js_struct.hh [new file with mode: 0644]
src/bindings/js/ethumb_js/Ethumb_Js.hh [new file with mode: 0644]
src/bindings/js/ethumb_js/ethumb_js_client.cc [new file with mode: 0644]
src/lib/ecore/ecore.c
src/lib/ecore/ecore_main.c
src/lib/ecore/ecore_private.h
src/lib/ecore_con/Ecore_Con_Eet.h
src/lib/efl/interfaces/efl_model_base.eo
src/lib/emotion/Emotion.h
src/lib/emotion/emotion_smart.c
src/lib/eo/Eo.h
src/tests/.gitignore
src/tests/ecore/ecore_test_ecore.c
src/tests/ecore/ecore_test_ecore_x.c
src/tests/efl_js/benchmark_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/benchmark_js_suite.js [new file with mode: 0755]
src/tests/efl_js/benchmark_object.eo [new file with mode: 0644]
src/tests/efl_js/benchmark_object_impl.cc [new file with mode: 0644]
src/tests/efl_js/ecore_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/ecore_js_suite.js [new file with mode: 0755]
src/tests/efl_js/eina_js_containers_suite.cc [new file with mode: 0644]
src/tests/efl_js/eina_js_containers_suite.js [new file with mode: 0755]
src/tests/efl_js/eina_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/eina_js_suite.js [new file with mode: 0755]
src/tests/efl_js/eio_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/eio_js_suite.js [new file with mode: 0755]
src/tests/efl_js/eldbus_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/eldbus_js_suite.js [new file with mode: 0755]
src/tests/efl_js/ethumb_js_suite.cc [new file with mode: 0644]
src/tests/efl_js/ethumb_js_suite.js [new file with mode: 0755]
src/tests/efl_js/suite_runner.hh [new file with mode: 0644]
src/tests/efl_js/testproj/hello.project [new file with mode: 0644]
src/tests/efl_js/testproj/hello.txt [new file with mode: 0644]
src/tests/efl_js/testproj/main.js [new file with mode: 0644]
src/tests/efl_js/timer.js [new file with mode: 0644]
src/tests/eolian_js/constructor_method_class.eo [new file with mode: 0644]
src/tests/eolian_js/eolian_js_suite.cc [new file with mode: 0644]
src/tests/eolian_js/eolian_js_suite.js [new file with mode: 0755]
src/tests/eolian_js/eolian_js_test_constructor_method_impl.c [new file with mode: 0644]
src/tests/eolian_js/eolian_js_test_eolian_js_binding.cc [new file with mode: 0644]
src/tests/eolian_js/eolian_js_test_evas_box.cc [new file with mode: 0644]
src/tests/eolian_js/eolian_js_test_test_object_impl.c [new file with mode: 0644]
src/tests/eolian_js/test_object.eo [new file with mode: 0644]