Daniel Kolesa
21530bd5d8
eolian: preliminary support for new constructors section
2014-09-01 15:35:50 +01:00
Stefan Schmidt
bc2a718634
tests/eolian: Remove deleted eo file from EXTRA_DIST
...
Removed in c88c0d9347
.
2014-08-25 10:58:13 +02:00
Daniel Kolesa
c1afa1b6b5
eolian: add entry point for database validation stage
2014-08-21 16:23:37 +01:00
Daniel Kolesa
ef380c56b6
eolian: support for setting a free function to values in eo files
2014-08-21 09:26:05 +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
70bf1eac24
eolian: add infrastructure for globals and constants
...
Nothing parses yet, and no API is exposed. Also, move the remaining instances of file
inside of existing structures to Eolian_Object and parse basename only once.
2014-08-21 09:26:04 +01:00
Daniel Kolesa
8c1b9ed3e2
eolian: initial API for expression evaluation
...
This commit also does several side (related) changes. Particularly, it updates
the Eolian C generator to use the new API, it adds missing expr types (null, char)
and masks, updates the API dealing with default return values to use expressions
instead of strings and does several fixes (mainly in lexer) around the place.
It also disallows single quoted strings as those are reserved for characters.
2014-08-21 09:26:03 +01:00
Daniel Kolesa
d7ca6dc1c3
eolian: initial support for expression evaluation
...
There are now functions that let you evaluate Eolian_Expression. They're not exposed
yet. Further improvements will come as well as public API.
2014-08-21 09:26:03 +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 Zaoui
805d746910
Eolian: Generate typedefs and structs.
...
This patch permits the generation of typedefs and structs in the
legacy and Eo header files. It includes tests.
2014-07-24 11:59:34 +03:00
Daniel Kolesa
2942d4bdfa
eolian: include newly added test files in dist
2014-07-22 11:53:59 +01:00
Daniel Kolesa
d7ce4332fe
eolian: separate database fill stuff from the parser
2014-07-11 11:31:48 +01:00
Daniel Kolesa
1772ab8a1c
eolian: separate database API and internals into different source files
2014-07-10 13:13:46 +01:00
Daniel Kolesa
37bc20298c
eolian: refactoring: split up eolian_database into individual files
2014-07-10 12:15:29 +01:00
Daniel Kolesa
5168297fdb
eolian: new API: eolian_system_directory_scan, use it
2014-07-07 16:48:54 +01:00
Savio Sena
073b666022
autotools: Fixed 'make examples' and 'make examples-install'
...
It was broken in set-ups with ($(builddir) != $(srcdir)) && ($(builddir) !=
$(srcdir)/build)
2014-07-02 20:01:09 -03:00
Daniel Kolesa
9b833f1dbd
eolian: introducing a new lexer/parser
...
This handwritten lexer/parser is more strict and cleaner than the previous Ragel based one,
as well as faster and doesn't leak memory (or shouldn't). It's a recursive descent style
parser with separate lexer part (unlike the previous effort) which is run at the same
stage as the parser (so it doesn't pre-lex).
@feature
2014-06-19 16:04:08 +01:00
Daniel Kolesa
0d417e6ebf
eolian: remove the ragel file plus support for ragel from the build system
2014-06-19 16:04:07 +01:00
Daniel Zaoui
5c55ce49e6
Eolian: rename internal files.
...
This files were needed to be renamed a long time ago :-)
2014-06-05 10:11:13 +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
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
04cc813813
Eolian: add test for generator.
...
The test checks the dev code generator.
2014-05-26 13:56:06 +03:00
Daniel Zaoui
a541aecf76
Eolian/Generator: add support for implementation source file.
...
By using -gi option, the generator appends the functions that are
present into the given eo file and missing into the developer file
(given via -o option as an in/out file).
@feature
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
Daniel Zaoui
e4444d2518
Eolian: add support for typedefs.
...
It includes parser updates, database fill and tests on basic and complex
types.
One can define types in this way:
type Evas_Coord: int; /* Simple type definition */
type List_Objects: Eina_List * <Eo *>;
@feature
2014-05-26 13:56:05 +03:00
Daniel Zaoui
8d8ab37b4d
Eolian/Tests: fix distcheck.
...
The .eo file was not added into EXTRA_DIST and as consequence the test
was failing during distcheck.
2014-04-28 12:05:27 +03:00
Daniel Zaoui
d80fabefe9
Eolian/Tests: add test for ctors and dtors.
2014-04-24 15:47:51 +03:00
Daniel Zaoui
0dda45961f
Eolian/Tests: Clean makefile + add return comment tests.
2014-04-24 14:20:21 +03:00
Daniel Zaoui
4f35a9a743
Eolian: Fix distcheck
...
scope.eo was not included in EXTRA_DIST.
2014-04-23 15:54:44 +03:00
Daniel Zaoui
d95a114db7
Eolian: infras for tests + first test
2014-04-22 09:54:24 +03:00
Jérémy Zurcher
995eac166a
eolian: generate eo_lexer.c with ragel if available
2014-03-10 18:15:25 +01:00
Tom Hacohen
4b24559ea6
Eolian: Split eolian build helper a different file.
...
This will let other modules use it more easily, and also make it easier
to borrow it to other repos.
2014-03-03 14:09:54 +02:00
Tom Hacohen
fabea6399c
Eolian: Added an helper to call eolian_gen from within the project.
2014-03-03 14:09:54 +02:00
Tom Hacohen
e4534ed0f2
Eolian: Renamed the eolian tool to eolian_gen.
2014-03-03 14:09:54 +02:00
Tom Hacohen
57c8f7ff38
Eolian: Fixed EXTRA_DIST.
2014-03-03 14:09:54 +02:00
Tom Hacohen
5a4f68d472
Eolian: Added eolian to the build system.
2014-03-03 14:09:53 +02:00