Daniel Kolesa
93726c86a3
eolian: get rid of eolian_parameter_information_get
2014-08-21 09:26:04 +01:00
Daniel Kolesa
ad3dbe834b
eolian: API refactoring
...
Remove eolian_implement_information_get. Also, fix some nasty lookup problems.
2014-08-21 09:26:04 +01:00
Daniel Kolesa
18c2b5082e
eolian: allow usage of stack Eina_Value in expr API
2014-08-21 09:26:04 +01:00
Daniel Kolesa
c81356e2ec
eolian: working more in-depth enum test
2014-08-21 09:26:04 +01:00
Daniel Kolesa
2e3887b994
eolian: struct/enum fixes and initial test for enums
2014-08-21 09:26:04 +01:00
Daniel Kolesa
d4031a21bf
eolian: test for constants/globals
...
Also added API to retrieve value of a variable (forgot about that one)
and made it impossible to create extern constants (doesn't make sense)
as well as made it impossible to give extern globals values.
2014-08-21 09:26:04 +01:00
Daniel Kolesa
ed28ee6aff
eolian: fix tests
2014-08-21 09:26:03 +01:00
Daniel Kolesa
c88c0d9347
eolian: fix tests and fix class name comparison in parser
...
This fixes the Eolian testsuite as well as adds a better way to compare where a class
comes from, allowing us to guess EOLIAN_TYPE_CLASS correctly.
2014-08-21 09:26:02 +01:00
Daniel Kolesa
64c2b292ba
eolian: preliminary eo file support for builtin true/false/null
...
Real API will use the new expression system, but that won't get into 1.11.
2014-07-28 10:16:15 +01:00
Daniel Kolesa
e2c51100c7
eolian: add test for class methods/properties
...
This also fixes a bug in the Eolian parser that handles class properties.
2014-07-24 14:02:46 +01:00
Daniel Kolesa
5a67cc997d
eolian: fix tests
2014-07-23 17:19:34 +01:00
Daniel Kolesa
572b7aa92f
eolian: eolian_function_parameter_get -> eolian_function_parameter_get_by_name
2014-07-23 14:22:25 +01:00
Daniel Kolesa
88cc1167e9
eolian: eolian_parameters_get -> eolian_function_parameters_get
2014-07-23 14:17:19 +01:00
Daniel Kolesa
fd0210f30e
eolian: list_get -> get, find_by -> get_by
2014-07-23 14:13:21 +01:00
Daniel Kolesa
e26be1aca6
eolian: fix NULL checks in APIs that return iterators + fix tests
2014-07-23 13:45:25 +01:00
Daniel Kolesa
89ca97aceb
eolian: new API: eolian_type_structs/aliases_get_by_file
2014-07-22 13:14:44 +01:00
Daniel Kolesa
b0788a546b
eolian: support for typedefs in c_type_get
2014-07-22 12:11:45 +01:00
Daniel Kolesa
b81e05def5
eolian: new API: eolian_type_alias_find_by_name, remove the old APIs that take an alias name, update tests
2014-07-21 17:12:35 +01:00
Daniel Kolesa
460cfd9e34
eolian: type_struct_description, type_struct_file -> type_description, type_file
2014-07-21 14:39:14 +01:00
Daniel Kolesa
197034bfd7
eolian: type_struct_is_extern -> type_is_extern
2014-07-21 14:14:22 +01:00
Daniel Kolesa
c4fd68f08a
eolian: add API to retrieve filename for each typedef and struct
2014-07-21 12:26:44 +01:00
Daniel Kolesa
00f99a874d
eolian: add test for extern
2014-07-15 15:50:58 +01:00
Daniel Kolesa
17a6bb122b
eolian: add tests for struct types plus fix a double free and name storage on the way
2014-07-14 12:11:48 +01:00
Daniel Kolesa
5d4cc031f9
eolian: s/dflt/default/g
2014-07-11 14:30:22 +01:00
Daniel Kolesa
e3cb885f10
eolian: fix testsuite
2014-07-11 11:52:45 +01:00
Daniel Kolesa
580aea04cd
eolian: refactoring step six
...
Move Eolian_Function as well, plus fix const correctness of several API funcs.
2014-07-09 20:59:31 +01:00
Daniel Kolesa
accdd50f50
eolian: refactoring step five
...
Move from all instances of Eolian_Type to Eolian_Type*.
2014-07-09 17:18:02 +01:00
Daniel Kolesa
52e68f986e
eolian: fix tests (update according to API changes)
2014-07-09 17:04:00 +01:00
Daniel Kolesa
53fb9515e9
eolian/generator: add asterisk on inout too
2014-07-08 14:15:36 +01:00
Daniel Kolesa
d967b6df32
eolian/tests: warning fixes
2014-06-30 17:20:39 +01:00
Daniel Kolesa
e84275cc37
eolian: make tests pass
2014-06-30 17:20:39 +01:00
Daniel Kolesa
a83e28ca3d
tests/eolian: fix for the new namespace syntax
2014-06-20 10:52:00 +01:00
Daniel Zaoui
dc3178404f
Eolian: modify 'implement' API parameters.
...
The function eolian_implement_information_get was returning strings for
the class and the function. It was written in this way at the beginning
because it was not needed to verify the correctness of the class and
the function.
Now that we have the namespace feature, this function must check it,
meaning that the class and the function are now known.
So we can return them instead of returning the strings.
The generators had to find the class from the classname. It is no more
needed.
The C++ generator has been adapted to this new API.
2014-05-29 14:48:05 +03:00
Daniel Zaoui
d949e9b41b
Eolian: fix test.
...
Constructor has to be defined in the constructors section and not as a
method.
2014-05-29 09:58:27 +03:00
Daniel Zaoui
8e4700ce65
Eolian: add support of namespaces.
...
It is now possible to define a class in a .eo file as e.g:
Elm::Widgets::Button.
Elm and Widgets will be the namespaces of the class Button.
@feature
2014-05-26 13:56:06 +03:00
Daniel Zaoui
5b2ce095a3
Eolian/Tests: add test for events.
2014-05-26 13:56:06 +03:00
Daniel Zaoui
62082548bc
Eolian: modify API to allow future scalability
...
Until now, the functions giving access to class information were taking
the class name as parameter.
Except the fact that we needed to search into a hash table for the internal
class structure, no flexibility is possible.
This change consists in modifying most of the APIs using the class name
with a new Eolian_Class type and adapt the code of the C and C++
generators accordingly.
2014-05-26 13:56:06 +03:00
Daniel Zaoui
1401ce36b6
Eolian/Tests: add test for overriding functions
2014-05-26 13:56:06 +03:00
Daniel Zaoui
946f845a2b
Eolian/Tests: add test for consts
...
This tests checks the different 'const' possibilities in the .eo file
and their good parsing.
2014-05-26 13:56:06 +03:00
Daniel Zaoui
8d18e2db3c
Eolian/Tests: move parsing tests to a specific file
2014-05-26 13:56:06 +03:00