summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--eo_tokenizer.h2
-rw-r--r--eo_tokenizer.rl30
2 files changed, 30 insertions, 2 deletions
diff --git a/eo_tokenizer.h b/eo_tokenizer.h
index 646dd45..6efd2d6 100644
--- a/eo_tokenizer.h
+++ b/eo_tokenizer.h
@@ -64,7 +64,7 @@ typedef enum _eo_accessor_type
{
SETTER,
GETTER,
- PROP_TYPE_LAST
+ ACCESSOR_TYPE_LAST
} Eo_Accessor_Type;
typedef struct _eo_accessor_def
diff --git a/eo_tokenizer.rl b/eo_tokenizer.rl
index 5fbd131..76d4b8f 100644
--- a/eo_tokenizer.rl
+++ b/eo_tokenizer.rl
@@ -519,12 +519,20 @@ eo_tokenizer_get(void)
return toknz;
}
+static char *_accessor_type_str[ACCESSOR_TYPE_LAST] = { "setter", "getter" };
+static char *_param_way_str[PARAM_WAY_LAST] = { "in", "out", "inout" };
+
void
eo_tokenizer_dump(Eo_Tokenizer *toknz)
{
const char *s;
- Eina_List *k, *l;
+ Eina_List *k, *l, *m, *n;
+
Eo_Class_Def *kls;
+ Eo_Property_Def *prop;
+ Eo_Param_Def *param;
+ Eo_Accessor_Def *accessor;
+ Eo_Ret_Def *ret;
EINA_LIST_FOREACH(toknz->classes, k, kls)
{
@@ -534,6 +542,26 @@ eo_tokenizer_dump(Eo_Tokenizer *toknz)
EINA_LIST_FOREACH(kls->inherits, l, s)
printf(" %s", s);
printf("\n");
+
+ EINA_LIST_FOREACH(kls->properties, l, prop)
+ {
+ printf(" property: %s\n", prop->name);
+ EINA_LIST_FOREACH(prop->params, m, param)
+ {
+ printf(" param: %s : %s (%s)\n",
+ param->name, param->type, param->comment);
+ }
+ EINA_LIST_FOREACH(prop->accessors, m, accessor)
+ {
+ printf(" accessor: %s : %s (%s)\n",
+ accessor->ret.type, _accessor_type_str[accessor->type],
+ accessor->comment);
+ printf(" legacy :");
+ EINA_LIST_FOREACH(accessor->legacies, n, s)
+ printf(" %s", s);
+ printf("\n");
+ }
+ }
}
}