Daniel Kolesa
7e94eb22b4
eolian: mark pure virtual funcs outside of implements
...
This is a better syntax and should've been like this in the first place.
2016-05-12 16:15:24 +01:00
Daniel Kolesa
c0d82ba900
eolian: preliminary doc dependency detection for external files
...
This doesn't quite work yet as path sanitization needs to be done for it to
work correctly. For now this code path is disabled and will be enabled once
all paths are correctly sanitized.
2015-09-23 17:17:50 +01:00
Daniel Kolesa
d559952117
eolian: reuse the parsed eot hash for eo too (simplify code)
2015-05-22 17:14:38 +01:00
Daniel Kolesa
1ffdcda292
eolian: simplify eolian_eo_file_parse
...
This also moves the ctor stuff into database_fill,
saving some loops when a class is already parsed.
2015-05-22 16:53:21 +01:00
Daniel Kolesa
b339313e4b
eolian: remove obsolete code dealing with multiple classes per file
2015-05-22 16:46:07 +01:00
Daniel Kolesa
370f406d2f
eolian: properly handle errors in database_fill
...
Fixes CID 1299294.
@fix
2015-05-20 18:11:02 +01:00
Daniel Kolesa
dfbb777bf1
eolian: keep track of all currently parsing files
2015-05-20 15:41:07 +01:00
Daniel Kolesa
30515bc946
eolian: cleaner cyclic import checks
2015-05-19 15:44:33 +01:00
Daniel Kolesa
72dcd2da03
eolian: add a functional "import" statement
2015-05-19 15:26:53 +01:00
Daniel Kolesa
e0fe487856
eolian: use fprintf(stderr) rather than eina_log for compile errors
2015-05-14 16:33:42 +01:00
Daniel Zaoui
d7d9317da4
Eolian: add filename to error message
2015-03-17 09:32:54 +02:00
Mike Blumenkrantz
5375e154fe
fix config.h inclusion across the tree
2014-09-23 15:56:46 -04:00
Daniel Kolesa
6fc1b18e1b
eolian: more helpful error reporting
2014-09-11 13:55:42 +01:00
Daniel Kolesa
44cecb6a87
eolian: simplify more fill code
2014-09-11 11:48:46 +01:00
Daniel Kolesa
2358e63d60
eolian: remove most of class fill
2014-09-11 11:29:54 +01:00
Daniel Kolesa
9915b0da55
eolian: remove more parts of fill
2014-09-11 11:21:04 +01:00
Daniel Kolesa
d85a3f6015
eolian: cleanup class fill
2014-09-11 11:02:51 +01:00
Daniel Kolesa
f55572d79e
eolian: remove Eo_Class_Def (fill bits still remaining)
2014-09-11 10:50:48 +01:00
Daniel Kolesa
88327c1d9d
eolian: remove leftover code
2014-09-11 10:37:41 +01:00
Daniel Kolesa
12ce49db01
eolian: remove Eo_Method_Def
2014-09-11 10:29:48 +01:00
Daniel Kolesa
2219c0329d
eolian: remove Eo_Property_Def
2014-09-10 17:15:31 +01:00
Daniel Kolesa
588f2dd9db
eolian: property cleanup
2014-09-10 16:46:34 +01:00
Daniel Kolesa
10843dc0e2
eolian: remove Eo_Ret_Def
2014-09-10 16:41:02 +01:00
Daniel Kolesa
ffb8e79034
eolian: remove accessor structures
2014-09-10 15:53:38 +01:00
Daniel Kolesa
faa24705c8
eolian: we can only have 2 accessors
2014-09-10 15:22:04 +01:00
Daniel Kolesa
f86c2d4e5a
eolian: remove accessor params feature
...
Temporarily replace it with @const_get and @const_set tags in values section.
2014-09-10 15:06:43 +01:00
Daniel Kolesa
9aff324457
eolian: remove Eo_Param_Def, reduce allocations, simplify code
2014-09-10 14:24:41 +01:00
Daniel Kolesa
d74eb93580
eolian: remove bool returns from some cases that cannot fail
2014-09-05 16:30:56 +01:00
Daniel Kolesa
b7c55642fa
eolian: cleanup
2014-09-05 16:21:39 +01:00
Daniel Kolesa
7ba2dbe238
eolian: remove some ifs in database_fill
2014-09-05 16:19:56 +01:00
Daniel Kolesa
70469cb44d
eolian: some minor refactoring
2014-09-05 16:18:47 +01:00
Daniel Kolesa
977d4fe1a6
eolian: better handling of @virtual implements
...
Now they're registered correctly. Also, add new API, eolian_implement_is_virtual.
Also, deal with get/set properly (when filling in additional implements)
2014-09-05 16:05:04 +01:00
Daniel Kolesa
dff8d56475
eolian: use implements only to retrieve functions list
...
This also changes the implements list so that it also includes virtual functions.
2014-09-05 11:54:29 +01:00
Daniel Kolesa
0c0d639693
eolian: cache function in implements where possible to get O(1) lookup
2014-09-04 15:15:38 +01:00
Daniel Kolesa
8d9bae1172
eolian: generate implements for every method/property
2014-09-04 15:03:00 +01:00
Daniel Kolesa
e75ded5e3f
eolian: prepare for implements list expansion
...
As the implements list will soon contain all methods and properties,
do some preparations. The Eolian library now fills in class field in
implements early on when the implement is local. The Eolian C generator
now checks for local implements and skips them (so that things don't break).
2014-09-04 15:03:00 +01:00
Daniel Kolesa
e67b52c514
eolian: fix auto/empty parsing/fill and add tests
2014-09-04 11:07:00 +01:00
Daniel Kolesa
0d6b4fad8f
eolian: wrong condition fix
2014-09-03 14:44:23 +01:00
Daniel Kolesa
5827486c3d
eolian: APIs to check auto/empty on a function
2014-09-03 14:26:09 +01:00
Daniel Kolesa
b13bafabba
eolian: support for default param values where applicable + API
2014-09-02 10:47:55 +01:00
Daniel Kolesa
d2702a4fad
eolian: remove @constructor syntax
2014-09-01 16:02:40 +01:00
Daniel Kolesa
21530bd5d8
eolian: preliminary support for new constructors section
2014-09-01 15:35:50 +01:00
Daniel Kolesa
616b58dd39
eolian: prepare for more tags in implements
2014-08-29 14:14:21 +01:00
Daniel Kolesa
84a6b654f6
eolian: shouldn't have gotten in
2014-08-29 11:41:19 +01:00
Daniel Kolesa
3e5da03f7d
eolian: update virtual to the new syntax (as per wiki)
2014-08-29 11:40:29 +01:00
Daniel Kolesa
b69b90832f
eolian: remove constructors section cruft
2014-08-27 15:43:47 +01:00
Daniel Kolesa
58a2025c25
eolian: new API: eolian_function_is_constructing
2014-08-21 09:26:05 +01:00
Daniel Kolesa
d788986fd8
eolian: reduce code duplication
2014-08-21 09:26:05 +01:00
Daniel Kolesa
33c39282b1
eolian: support "eo: null;" for legacy only functions/properties
2014-08-21 09:26:05 +01:00
Daniel Kolesa
dbf48c0ecc
eolian: remove the remaining superfluous database_ functions
2014-08-21 09:26:05 +01:00