aboutsummaryrefslogtreecommitdiffstats
path: root/src/Makefile_Eina_Cxx.am (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Revert "autotools: enable make check per individual modules."Stefan Schmidt2015-05-071-6/+0
| | | | | | | This reverts commit 35119e7bfdc7c13c2041293f3d0b2ebe1fb7c313. Reverted to bring make check back in a working state. Also the way we want to handle a more modular testing needs discussion.
* autotools: enable make check per individual modules.kabeer khan2015-05-071-0/+6
| | | | | | | | Currently make check runs tests of whole EFL.Enabled running of tests of individual modules by make check-<modulename> Signed-off-by: kabeer khan <kabeer.khan@samsung.com> Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
* eo_cxx: Fix signal_connection disconnect crashVitor Sousa2015-04-141-0/+1
| | | | | | | | | | | | Fixed crash when disconnecting event inside of its own event callback. Instead of deleting the callback object immediately during disconnection (which causes the callback to be freed), the deletion is now scheduled for later (using ecore_main_loop_thread_safe_call_async). Updated some Makefiles to proper include ecore now that it is used in all event wrappers. Added a unit test to verify crashes under these circumstances.
* eina_cxx: Add eina::string_view class (non owning reference to string)Vitor Sousa2015-04-141-0/+1
| | | | | | Add an implementation of string_view to Eina C++. It is a non owning reference to a string that allows lightweight argument passing of both C++ std::string and C strings (const char*) on interfaces.
* cxx: General C++ Eo wrapper generation improvementVitor Sousa2015-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using a new architecture in the generated files that simplify multiple inheritance and allows the use of interface types as parameters. No longer using a hand-crafted C++ header for eo_base.eo. This file was added to the generation process. Updated all files that are dependent in the hand-crafted eo_base C++ header. Now there is a class that contains the essentials functions of the former eo::base wrapper and that is used to create (through inheritance) the "concrete" classes for all Eo generated wrappers. No longer binding any function or property that are protected, private or legacy for now. eolian_type_instance is now a struct with general information for the whole type. Added the new header file namespace_generator.hh to hold namespace generation grammars. Separated declaration and definition of Eo wrappers methods. Referring for most objects by its full name (starting at the global namespace ::) in the generated files. Created additional helper grammars to avoid code replication. Removed a TODO comment referring to a doubt about inheritance of constructor methods. Added a TODO comment regarding memory allocation for callbacks in static member functions.
* eina_cxx: Include newly added header to unbreak make distcheckStefan Schmidt2014-10-241-0/+1
|
* eina-cxx: eldbus-cxx: eo-cxx: Fixed test includes and header installationFelipe Magno de Almeida2014-07-181-0/+3
|
* eina-cxx: Added interop containers.Savio Sena2014-07-181-2/+4
|
* eldbus-cxx: Implementation of eldbus C++ APIFelipe Magno de Almeida2014-07-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Applications can: void method_callback(void* data, const Eldbus_Service_Interface* iface, const Eldbus_Message* message); struct { ... } data_struct; Eldbus_Method methods[] = { "method1", ELDBUS_ARGS("b", "bool"), ELDBUS_ARGS("b", "bool"), ELDBUS_METHOD_FLAG_HAS_DATA , (Eldbus_Method_Cb)&method_callback, &data_struct }; And method_callback will be called with data parameter pointing to data_struct global object. Also, Eldbus-cxx supports registering an interface passing a lambda or function object as method. For example: edb::service_interface iface = edb::service_interface_register (c, path, interface , es::method("SendStringAndBool" , [expected_string, expected_bool] (std::string const& n, bool b , bool* out) { std::cout << "Running SendStringAndBool" << std::endl; ck_assert(n == expected_string); ck_assert(b == expected_bool); *out = b; return n; } , es::ins<std::string, bool>("string", "bool") , es::outs<std::string, bool>("string", "bool") ) ); When a request for "SendStringAndBool" with the proper signature is called, executes the lambda and replies with the return value and its bool* out parameter value. Reviewers: cedric, woohyun, raster CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D1052
* autotools: Fixed 'make examples' and 'make examples-install'Savio Sena2014-07-021-1/+1
| | | | | It was broken in set-ups with ($(builddir) != $(srcdir)) && ($(builddir) != $(srcdir)/build)
* Dont install c++ headers of bindings when --disable-c++11 is used.Guillaume Friloux2014-06-021-1/+1
|
* eolian-cxx: fix make distcheck and automake files for Eolian C++Felipe Magno de Almeida2014-05-041-4/+2
| | | | | | | | | | | | | | | | | Summary: Fixed distcheck for Eolian C++. Made the generated files as nodist so it doesn't get picked up for generation way too early. Reviewers: cedric, seoz CC: cedric Maniphest Tasks: T1220 Differential Revision: https://phab.enlightenment.org/D820 Signed-off-by: Cedric Bail <cedric.bail@free.fr>
* eina-cxx: add eina_integer_sequence, eina_optional and their tests.Felipe Magno de Almeida2014-05-031-2/+5
| | | | | | | | | | | | Summary: eina::optional mimics C++14 std::optional behavior and semantics. Reviewers: felipealmeida, cedric, smohanty, woohyun, raster CC: cedric Differential Revision: https://phab.enlightenment.org/D815 Signed-off-by: Cedric Bail <cedric.bail@free.fr>
* eina-cxx: Fixes compilation errors and warnings in clangFelipe Magno de Almeida2014-03-111-0/+2
| | | | | | | | | | Summary: @fix compilation errors with defining variable and type on the same statement on clang without a default-constructor. Also removed warnings with inconsistent uses of struct/class for forward declaration and unused parameters. Reviewers: cedric, stefan_schmidt CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D622
* eina-cxx: Added eina_log support for C++, using IOStreams syntaxFelipe Magno de Almeida2014-03-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Added eina_log support for C++ using the following macros: For logging into a domain: EINA_CXX_DOM_LOG EINA_CXX_DOM_LOG_CRIT EINA_CXX_DOM_LOG_ERR EINA_CXX_DOM_LOG_INFO EINA_CXX_DOM_LOG_DBG EINA_CXX_DOM_LOG_WARN And for logging into the default domain: EINA_CXX_LOG EINA_CXX_LOG_CRIT EINA_CXX_LOG_ERR EINA_CXX_LOG_INFO EINA_CXX_LOG_DBG EINA_CXX_LOG_WARN The usage is simple as can be seen in the tests: efl::eina::log_domain domain("error_domain_name"); domain.set_level(efl::eina::log_level::critical); EINA_CXX_DOM_LOG_CRIT(domain, "something went wrong with the following error: " << error); @feature Reviewers: cedric CC: raster, savio, cedric, sanjeev Differential Revision: https://phab.enlightenment.org/D605
* eina-cxx: renamed efl::eina::eina_value to efl::eina::valueFelipe Magno de Almeida2014-03-071-1/+1
| | | | | | | | | | Reviewers: cedric CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D606 Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
* eina_cxx: move Eina_CXX to a bindings subdirectory.Cedric Bail2014-02-261-19/+17
| | | | | | | We do expect to integrate more bindings support in EFL to make them first class citizen and make sure they get proper attention during the development cycle. It so make sense to give them a proper subdirectory.
* eina_cxx: make sure it can build out of the source tree.Cedric Bail2014-02-261-0/+1
|
* eina: add a C++ bindings to Eina @feature.Felipe Magno de Almeida2014-02-251-0/+61
The goal of this library is to make the life of C++ developers easier when having to manipulate Eina datatype by providing a layer to abstract those data type in C++. Check examples for now. Documentation will come soon, but we are pushing that rather sooner to get feedback on those bindings. As you will notice, this library is just composed of headers. There is no .so and we do think it is better this way. Reducing ABI and API stability issue for applications developers who are the primary target of this binding. Also please note that you will need to have C++11 to use this binding. Signed-off-by: Cedric Bail <cedric.bail@free.fr>