path: root/src/lib/eolian/eolian_database.h
diff options
authorDaniel Kolesa <>2019-05-26 18:09:34 +0200
committerDaniel Kolesa <>2019-05-26 18:16:01 +0200
commitdb1b637faea4dfc2c1acd06f282f26a5d88bdcae (patch)
tree52c1acd6f98fcd19a3be882aebf285265429fb0b /src/lib/eolian/eolian_database.h
parent13ddc5dbc165f3fead4a70301073bc901dbc1269 (diff)
eolian: initial versioning implementation
This implements initial support for specifying unit versions. The default version is 1, specifying the basic feature level. If you want to specify another version, you need to specify something like `#version 2` at the beginning of the .eo or .eot file; the version number must be higher than 0 and lower than USHRT_MAX (typically 65536). The beginning of the file is now called the "header section"; other things may be added into the header section later. Version cannot be specified twice, and it cannot be specified once other contents (like types or class definition) appear. Comments do not count as other contents, so those are fine to appear before #version. @feature
Diffstat (limited to 'src/lib/eolian/eolian_database.h')
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/eolian/eolian_database.h b/src/lib/eolian/eolian_database.h
index f74d0fa..0dce769 100644
--- a/src/lib/eolian/eolian_database.h
+++ b/src/lib/eolian/eolian_database.h
@@ -45,6 +45,7 @@ struct _Eolian_Unit
45 Eina_Hash *structs; 45 Eina_Hash *structs;
46 Eina_Hash *enums; 46 Eina_Hash *enums;
47 Eina_Hash *objects; 47 Eina_Hash *objects;
48 unsigned short version;
48}; 49};
49 50
50typedef struct _Eolian_State_Area 51typedef struct _Eolian_State_Area