eolian_cxx/generator: support for eot files

This commit is contained in:
Daniel Kolesa 2014-06-24 14:21:32 +01:00
parent ac22afec8a
commit 5e5655463c
1 changed files with 20 additions and 1 deletions

View File

@ -244,12 +244,29 @@ _resolve_classname(options_type& opts)
}
}
static void
_scan_directories(options_type const& opts)
{
for (auto src : opts.in_srcs)
{
if (eina_str_has_suffix(src.c_str(), EO_SUFFIX)) continue;
eolian_read_from_fs(src.c_str());
}
}
static void
_load_eot()
{
eolian_all_eot_files_parse();
}
static void
_load_classes(options_type const& opts)
{
for (auto src : opts.in_srcs)
{
if (eolian_read_from_fs(src.c_str()) == NULL)
if (!eina_str_has_suffix(src.c_str(), EO_SUFFIX)) continue;
if ( eolian_read_from_fs(src.c_str()) == NULL)
{
EINA_CXX_DOM_LOG_WARN(::domain)
<< "Couldn't load eolian file: " << src;
@ -352,6 +369,8 @@ int main(int argc, char **argv)
domain.set_level(efl::eina::log_level::debug);
#endif
options_type opts = _read_options(argc, argv);
_scan_directories(opts);
_load_eot();
_load_classes(opts);
_resolve_classname(opts);
_validate_options(opts);