From 857bdca899fba1de12b091e91b5c922ebec2e996 Mon Sep 17 00:00:00 2001 From: Daniel Zaoui Date: Mon, 17 Feb 2014 15:16:01 +0200 Subject: [PATCH] Eolian/Lexer: remove default ctor/dtor. They are now supported inside the section implements. --- src/lib/eolian/eo_definitions.c | 25 - src/lib/eolian/eo_definitions.h | 21 - src/lib/eolian/eo_lexer.c | 2153 +++++++++++++++---------------- src/lib/eolian/eo_lexer.rl | 84 +- 4 files changed, 1024 insertions(+), 1259 deletions(-) diff --git a/src/lib/eolian/eo_definitions.c b/src/lib/eolian/eo_definitions.c index 751cf9dbf1..48a050757d 100644 --- a/src/lib/eolian/eo_definitions.c +++ b/src/lib/eolian/eo_definitions.c @@ -83,28 +83,6 @@ eo_definitions_event_def_free(Eo_Event_Def *sgn) free(sgn); } -void -eo_definitions_dfltctor_def_free(Eo_DfltCtor_Def *ctor) -{ - if (ctor->name) - eina_stringshare_del(ctor->name); - if (ctor->comment) - eina_stringshare_del(ctor->comment); - - free(ctor); -} - -void -eo_definitions_dfltdtor_def_free(Eo_DfltDtor_Def *dtor) -{ - if (dtor->name) - eina_stringshare_del(dtor->name); - if (dtor->comment) - eina_stringshare_del(dtor->comment); - - free(dtor); -} - void eo_definitions_impl_def_free(Eo_Implement_Def *impl) { @@ -154,9 +132,6 @@ eo_definitions_class_def_free(Eo_Class_Def *kls) EINA_LIST_FREE(kls->events, sgn) eo_definitions_event_def_free(sgn); - if (kls->dflt_ctor) eo_definitions_dfltctor_def_free(kls->dflt_ctor); - if (kls->dflt_dtor) eo_definitions_dfltdtor_def_free(kls->dflt_dtor); - free(kls); } diff --git a/src/lib/eolian/eo_definitions.h b/src/lib/eolian/eo_definitions.h index 9a38c7817f..055fa28cd1 100644 --- a/src/lib/eolian/eo_definitions.h +++ b/src/lib/eolian/eo_definitions.h @@ -91,22 +91,6 @@ typedef struct _eo_event_def const char *comment; } Eo_Event_Def; -/* DEFAULT CONSTRUCTOR */ - -typedef struct _eo_dflt_ctor_def -{ - const char *name; - const char *comment; -} Eo_DfltCtor_Def; - -/* DEFAULT DESTRUCTOR */ - -typedef struct _eo_dflt_dtor_def -{ - const char *name; - const char *comment; -} Eo_DfltDtor_Def; - /* IMPLEMENT */ typedef struct _eo_implement_legacy_param_def @@ -145,8 +129,6 @@ typedef struct _eo_class_def Eina_List *destructors; Eina_List *properties; Eina_List *methods; - Eo_DfltCtor_Def *dflt_ctor; - Eo_DfltDtor_Def *dflt_dtor; } Eo_Class_Def; void eo_definitions_ret_free(Eo_Ret_Def *ret); @@ -163,8 +145,5 @@ void eo_definitions_class_def_free(Eo_Class_Def *kls); void eo_definitions_event_def_free(Eo_Event_Def *sgn); -void eo_definitions_dfltctor_def_free(Eo_DfltCtor_Def *ctor); -void eo_definitions_dfltdtor_def_free(Eo_DfltDtor_Def *dtor); - void eo_definitions_impl_def_free(Eo_Implement_Def *impl); #endif /* __EO_DEFINITIONS_H__ */ diff --git a/src/lib/eolian/eo_lexer.c b/src/lib/eolian/eo_lexer.c index 4c49b673fd..76022b8d7f 100644 --- a/src/lib/eolian/eo_lexer.c +++ b/src/lib/eolian/eo_lexer.c @@ -256,33 +256,11 @@ _eo_tokenizer_event_get(Eo_Tokenizer *toknz, char *p) return sgn; } -static Eo_DfltCtor_Def* -_eo_tokenizer_dflt_ctor_get(Eo_Tokenizer *toknz, char *p) -{ - Eo_DfltCtor_Def *ctor = calloc(1, sizeof(Eo_DfltCtor_Def)); - if (ctor == NULL) ABORT(toknz, "calloc Eo_DfltCtor_Def failure"); - - ctor->name = _eo_tokenizer_token_get(toknz, p); - - return ctor; -} - -static Eo_DfltDtor_Def* -_eo_tokenizer_dflt_dtor_get(Eo_Tokenizer *toknz, char *p) -{ - Eo_DfltDtor_Def *dtor = calloc(1, sizeof(Eo_DfltDtor_Def)); - if (dtor == NULL) ABORT(toknz, "calloc Eo_DfltDtor_Def failure"); - - dtor->name = _eo_tokenizer_token_get(toknz, p); - - return dtor; -} - static Eo_Implement_Def* _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) { Eo_Implement_Def *impl = calloc(1, sizeof(Eo_Implement_Def)); - if (impl == NULL) ABORT(toknz, "calloc Eo_DfltDtor_Def failure"); + if (impl == NULL) ABORT(toknz, "calloc Eo_Implement_Def failure"); impl->meth_name = _eo_tokenizer_token_get(toknz, p); @@ -290,12 +268,12 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) } -#line 364 "eo_lexer.rl" +#line 342 "eo_lexer.rl" -#line 298 "eo_lexer.c" -static const unsigned char _eo_tokenizer_actions[] = { +#line 276 "eo_lexer.c" +static const char _eo_tokenizer_actions[] = { 0, 1, 0, 1, 2, 1, 6, 1, 10, 1, 15, 1, 16, 1, 17, 1, 18, 1, 19, 1, 20, 1, 21, 1, @@ -303,7 +281,7 @@ static const unsigned char _eo_tokenizer_actions[] = { 26, 1, 27, 1, 28, 1, 29, 1, 30, 1, 31, 1, 32, 1, 33, 1, 34, 1, 35, 1, 36, 1, 37, 1, - 38, 1, 39, 1, 40, 1, 41, 1, + 40, 1, 41, 1, 42, 1, 43, 1, 44, 1, 45, 1, 46, 1, 47, 1, 48, 1, 49, 1, 50, 1, 51, 1, 52, 1, 53, 1, 54, 1, 55, 1, @@ -312,8 +290,8 @@ static const unsigned char _eo_tokenizer_actions[] = { 64, 1, 65, 1, 66, 1, 67, 1, 68, 1, 69, 1, 70, 1, 71, 1, 72, 1, 73, 1, 74, 1, 75, 1, - 76, 1, 77, 1, 78, 1, 79, 1, - 80, 1, 81, 1, 84, 1, 85, 1, + 76, 1, 77, 1, 80, 1, 81, 1, + 82, 1, 83, 1, 84, 1, 85, 1, 86, 1, 87, 1, 88, 1, 89, 1, 90, 1, 91, 1, 92, 1, 93, 1, 94, 1, 95, 1, 96, 1, 97, 1, @@ -322,26 +300,21 @@ static const unsigned char _eo_tokenizer_actions[] = { 106, 1, 107, 1, 108, 1, 109, 1, 110, 1, 111, 1, 112, 1, 113, 1, 114, 1, 115, 1, 116, 1, 117, 1, - 118, 1, 119, 1, 120, 1, 121, 1, - 122, 1, 123, 1, 124, 1, 125, 1, - 126, 1, 127, 1, 128, 2, 0, 41, - 2, 0, 52, 2, 0, 61, 2, 0, - 71, 2, 0, 80, 2, 0, 92, 2, - 0, 101, 2, 0, 123, 2, 4, 47, - 2, 5, 42, 2, 6, 2, 2, 7, - 43, 2, 8, 56, 2, 10, 0, 2, - 10, 72, 2, 12, 87, 2, 13, 82, - 2, 14, 83, 2, 15, 0, 2, 15, - 93, 2, 16, 0, 2, 17, 0, 2, - 18, 0, 2, 18, 2, 2, 19, 0, - 2, 21, 0, 2, 22, 0, 2, 22, - 116, 2, 23, 0, 2, 23, 117, 2, - 24, 0, 2, 25, 0, 2, 25, 2, - 2, 26, 0, 2, 28, 0, 2, 29, - 0, 2, 29, 2, 2, 36, 0, 2, - 36, 124, 2, 39, 1, 2, 39, 2, - 2, 39, 3, 2, 39, 9, 2, 39, - 11, 2, 39, 19, 2, 39, 21 + 118, 1, 119, 1, 120, 2, 0, 37, + 2, 0, 48, 2, 0, 57, 2, 0, + 67, 2, 0, 76, 2, 0, 88, 2, + 0, 97, 2, 0, 115, 2, 4, 43, + 2, 5, 38, 2, 6, 2, 2, 7, + 39, 2, 8, 52, 2, 10, 0, 2, + 10, 68, 2, 12, 83, 2, 13, 78, + 2, 14, 79, 2, 15, 0, 2, 15, + 89, 2, 16, 0, 2, 17, 0, 2, + 18, 0, 2, 18, 2, 2, 20, 0, + 2, 21, 0, 2, 21, 2, 2, 22, + 0, 2, 24, 0, 2, 25, 0, 2, + 25, 2, 2, 32, 0, 2, 32, 116, + 2, 35, 1, 2, 35, 2, 2, 35, + 3, 2, 35, 9, 2, 35, 11 }; static const short _eo_tokenizer_key_offsets[] = { @@ -364,35 +337,32 @@ static const short _eo_tokenizer_key_offsets[] = { 502, 513, 525, 529, 530, 531, 541, 543, 546, 548, 551, 552, 563, 567, 570, 572, 575, 586, 588, 591, 592, 593, 594, 595, - 596, 597, 598, 599, 600, 601, 606, 610, - 611, 612, 622, 624, 627, 631, 632, 633, - 634, 635, 636, 637, 638, 639, 644, 648, - 649, 650, 660, 662, 665, 669, 670, 671, - 672, 673, 677, 685, 693, 705, 709, 721, - 722, 723, 733, 735, 738, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 758, 766, - 774, 787, 792, 796, 797, 798, 799, 800, - 801, 813, 818, 822, 831, 835, 836, 837, - 838, 839, 840, 844, 853, 860, 867, 878, - 882, 896, 906, 913, 925, 930, 936, 941, - 942, 943, 944, 945, 946, 949, 956, 963, - 971, 972, 976, 983, 991, 995, 1000, 1001, - 1002, 1012, 1014, 1017, 1027, 1039, 1046, 1058, - 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1069, - 1077, 1084, 1096, 1101, 1108, 1109, 1110, 1111, - 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, - 1123, 1130, 1137, 1145, 1146, 1147, 1148, 1149, - 1150, 1154, 1155, 1156, 1157, 1158, 1159, 1160, - 1161, 1162, 1166, 1174, 1177, 1179, 1180, 1181, - 1182, 1183, 1194, 1197, 1199, 1206, 1214, 1222, - 1226, 1226, 1227, 1236, 1239, 1241, 1252, 1256, - 1256, 1257, 1265, 1268, 1270, 1271, 1272, 1273, - 1274, 1283, 1286, 1288, 1295, 1296, 1305, 1308, - 1310, 1311, 1312, 1313, 1314, 1318, 1318, 1319, - 1328, 1331, 1333, 1340, 1341, 1353, 1356, 1358, - 1359, 1366, 1369, 1372, 1373, 1380, 1383, 1386, - 1387, 1388, 1390, 1391, 1392, 1393, 1396, 1397, - 1398 + 596, 597, 598, 599, 600, 601, 602, 606, + 607, 608, 609, 610, 611, 612, 613, 614, + 615, 619, 620, 621, 622, 623, 627, 635, + 643, 655, 659, 671, 672, 673, 683, 685, + 688, 696, 697, 698, 699, 700, 701, 702, + 703, 704, 708, 716, 724, 737, 742, 746, + 747, 748, 749, 750, 751, 763, 768, 772, + 781, 785, 786, 787, 788, 789, 790, 794, + 803, 810, 817, 828, 832, 846, 856, 863, + 875, 880, 886, 891, 892, 893, 894, 895, + 896, 899, 906, 913, 921, 922, 926, 933, + 941, 945, 950, 951, 952, 962, 964, 967, + 977, 989, 996, 1008, 1009, 1010, 1011, 1012, + 1013, 1014, 1015, 1019, 1027, 1034, 1046, 1051, + 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, + 1066, 1067, 1068, 1069, 1073, 1080, 1087, 1095, + 1096, 1097, 1098, 1099, 1100, 1104, 1105, 1106, + 1107, 1108, 1109, 1110, 1111, 1112, 1116, 1124, + 1127, 1129, 1130, 1131, 1132, 1133, 1144, 1147, + 1149, 1156, 1164, 1172, 1176, 1176, 1177, 1186, + 1189, 1191, 1202, 1206, 1206, 1207, 1215, 1218, + 1220, 1221, 1222, 1223, 1224, 1233, 1236, 1238, + 1245, 1246, 1255, 1258, 1260, 1261, 1262, 1263, + 1264, 1268, 1268, 1269, 1278, 1281, 1283, 1290, + 1291, 1303, 1306, 1308, 1309, 1310, 1311, 1312, + 1314, 1315, 1316, 1317, 1320, 1321, 1322 }; static const char _eo_tokenizer_trans_keys[] = { @@ -471,106 +441,97 @@ static const char _eo_tokenizer_trans_keys[] = { 42, 95, 0, 32, 48, 57, 65, 90, 97, 122, 10, 42, 10, 42, 47, 10, 110, 115, 116, 114, 117, 99, 116, 111, - 114, 10, 59, 115, 0, 32, 10, 59, - 0, 32, 42, 64, 10, 95, 0, 32, - 48, 57, 65, 90, 97, 122, 10, 42, - 10, 42, 47, 10, 123, 0, 32, 115, - 116, 114, 117, 99, 116, 111, 114, 10, - 59, 115, 0, 32, 10, 59, 0, 32, - 42, 64, 10, 95, 0, 32, 48, 57, - 65, 90, 97, 122, 10, 42, 10, 42, - 47, 10, 123, 0, 32, 101, 110, 116, - 115, 10, 123, 0, 32, 10, 125, 0, - 32, 65, 90, 97, 122, 44, 95, 48, - 57, 65, 90, 97, 122, 10, 44, 59, - 95, 0, 32, 48, 57, 65, 90, 97, - 122, 10, 59, 0, 32, 9, 10, 13, - 32, 47, 125, 0, 31, 65, 90, 97, - 122, 42, 64, 10, 95, 0, 32, 48, - 57, 65, 90, 97, 122, 10, 42, 10, - 42, 47, 10, 125, 0, 32, 65, 90, - 97, 122, 112, 108, 101, 109, 101, 110, - 116, 115, 10, 123, 0, 32, 10, 125, - 0, 32, 65, 90, 97, 122, 58, 95, - 48, 57, 65, 90, 97, 122, 10, 58, - 59, 95, 123, 0, 32, 48, 57, 65, + 114, 115, 10, 123, 0, 32, 115, 116, + 114, 117, 99, 116, 111, 114, 115, 10, + 123, 0, 32, 101, 110, 116, 115, 10, + 123, 0, 32, 10, 125, 0, 32, 65, + 90, 97, 122, 44, 95, 48, 57, 65, + 90, 97, 122, 10, 44, 59, 95, 0, + 32, 48, 57, 65, 90, 97, 122, 10, + 59, 0, 32, 9, 10, 13, 32, 47, + 125, 0, 31, 65, 90, 97, 122, 42, + 64, 10, 95, 0, 32, 48, 57, 65, + 90, 97, 122, 10, 42, 10, 42, 47, + 10, 125, 0, 32, 65, 90, 97, 122, + 112, 108, 101, 109, 101, 110, 116, 115, + 10, 123, 0, 32, 10, 125, 0, 32, + 65, 90, 97, 122, 58, 95, 48, 57, + 65, 90, 97, 122, 10, 58, 59, 95, + 123, 0, 32, 48, 57, 65, 90, 97, + 122, 10, 59, 123, 0, 32, 10, 108, + 0, 32, 101, 103, 97, 99, 121, 9, + 10, 13, 32, 59, 123, 0, 31, 65, 90, 97, 122, 10, 59, 123, 0, 32, - 10, 108, 0, 32, 101, 103, 97, 99, - 121, 9, 10, 13, 32, 59, 123, 0, - 31, 65, 90, 97, 122, 10, 59, 123, - 0, 32, 10, 125, 0, 32, 10, 59, - 125, 0, 32, 65, 90, 97, 122, 10, - 112, 0, 32, 97, 114, 97, 109, 115, - 10, 123, 0, 32, 10, 58, 59, 0, - 32, 65, 90, 97, 122, 9, 13, 32, - 65, 90, 97, 122, 95, 48, 57, 65, - 90, 97, 122, 10, 59, 95, 0, 32, - 48, 57, 65, 90, 97, 122, 10, 59, - 0, 32, 9, 10, 13, 32, 47, 58, - 59, 125, 0, 31, 65, 90, 97, 122, - 10, 58, 59, 125, 0, 32, 65, 90, + 10, 125, 0, 32, 10, 59, 125, 0, + 32, 65, 90, 97, 122, 10, 112, 0, + 32, 97, 114, 97, 109, 115, 10, 123, + 0, 32, 10, 58, 59, 0, 32, 65, + 90, 97, 122, 9, 13, 32, 65, 90, 97, 122, 95, 48, 57, 65, 90, 97, - 122, 9, 13, 32, 58, 59, 95, 48, - 57, 65, 90, 97, 122, 9, 13, 32, - 58, 59, 10, 59, 114, 125, 0, 32, - 10, 114, 125, 0, 32, 101, 116, 117, - 114, 110, 9, 13, 32, 9, 13, 32, - 65, 90, 97, 122, 95, 48, 57, 65, - 90, 97, 122, 58, 95, 48, 57, 65, - 90, 97, 122, 58, 65, 90, 97, 122, - 95, 48, 57, 65, 90, 97, 122, 59, - 95, 48, 57, 65, 90, 97, 122, 10, - 125, 0, 32, 10, 59, 125, 0, 32, - 42, 64, 10, 95, 0, 32, 48, 57, - 65, 90, 97, 122, 10, 42, 10, 42, - 47, 10, 58, 59, 125, 0, 32, 65, - 90, 97, 122, 9, 10, 13, 32, 59, - 123, 0, 31, 65, 90, 97, 122, 95, - 48, 57, 65, 90, 97, 122, 10, 59, - 95, 123, 0, 32, 48, 57, 65, 90, - 97, 122, 58, 104, 101, 114, 105, 116, - 115, 10, 123, 0, 32, 10, 125, 0, - 32, 65, 90, 97, 122, 95, 48, 57, - 65, 90, 97, 122, 10, 44, 95, 125, + 122, 10, 59, 95, 0, 32, 48, 57, + 65, 90, 97, 122, 10, 59, 0, 32, + 9, 10, 13, 32, 47, 58, 59, 125, + 0, 31, 65, 90, 97, 122, 10, 58, + 59, 125, 0, 32, 65, 90, 97, 122, + 95, 48, 57, 65, 90, 97, 122, 9, + 13, 32, 58, 59, 95, 48, 57, 65, + 90, 97, 122, 9, 13, 32, 58, 59, + 10, 59, 114, 125, 0, 32, 10, 114, + 125, 0, 32, 101, 116, 117, 114, 110, + 9, 13, 32, 9, 13, 32, 65, 90, + 97, 122, 95, 48, 57, 65, 90, 97, + 122, 58, 95, 48, 57, 65, 90, 97, + 122, 58, 65, 90, 97, 122, 95, 48, + 57, 65, 90, 97, 122, 59, 95, 48, + 57, 65, 90, 97, 122, 10, 125, 0, + 32, 10, 59, 125, 0, 32, 42, 64, + 10, 95, 0, 32, 48, 57, 65, 90, + 97, 122, 10, 42, 10, 42, 47, 10, + 58, 59, 125, 0, 32, 65, 90, 97, + 122, 9, 10, 13, 32, 59, 123, 0, + 31, 65, 90, 97, 122, 95, 48, 57, + 65, 90, 97, 122, 10, 59, 95, 123, 0, 32, 48, 57, 65, 90, 97, 122, - 10, 44, 125, 0, 32, 10, 0, 32, - 65, 90, 97, 122, 103, 97, 99, 121, - 95, 112, 114, 101, 102, 105, 120, 10, - 58, 0, 32, 10, 0, 32, 65, 90, - 97, 122, 95, 48, 57, 65, 90, 97, - 122, 59, 95, 48, 57, 65, 90, 97, - 122, 116, 104, 111, 100, 115, 10, 123, - 0, 32, 111, 112, 101, 114, 116, 105, - 101, 115, 10, 123, 0, 32, 10, 47, - 97, 99, 105, 109, 0, 32, 10, 0, - 32, 42, 47, 98, 108, 110, 105, 10, - 47, 108, 114, 125, 0, 32, 65, 90, - 97, 122, 10, 0, 32, 42, 47, 95, - 48, 57, 65, 90, 97, 122, 95, 101, - 48, 57, 65, 90, 97, 122, 95, 101, - 48, 57, 65, 90, 97, 122, 9, 13, - 32, 47, 59, 10, 47, 125, 0, 32, - 65, 90, 97, 122, 10, 0, 32, 42, - 47, 9, 13, 32, 42, 95, 48, 57, - 65, 90, 97, 122, 9, 13, 32, 47, - 59, 10, 47, 103, 112, 115, 125, 0, - 32, 10, 0, 32, 42, 47, 101, 97, - 101, 59, 10, 47, 125, 0, 32, 65, - 90, 97, 122, 10, 0, 32, 42, 47, + 58, 104, 101, 114, 105, 116, 115, 10, + 123, 0, 32, 10, 125, 0, 32, 65, + 90, 97, 122, 95, 48, 57, 65, 90, + 97, 122, 10, 44, 95, 125, 0, 32, + 48, 57, 65, 90, 97, 122, 10, 44, + 125, 0, 32, 10, 0, 32, 65, 90, + 97, 122, 103, 97, 99, 121, 95, 112, + 114, 101, 102, 105, 120, 10, 58, 0, + 32, 10, 0, 32, 65, 90, 97, 122, 95, 48, 57, 65, 90, 97, 122, 59, - 10, 47, 108, 111, 112, 114, 125, 0, - 32, 10, 0, 32, 42, 47, 101, 98, - 97, 101, 9, 13, 32, 47, 59, 10, - 47, 125, 0, 32, 65, 90, 97, 122, + 95, 48, 57, 65, 90, 97, 122, 116, + 104, 111, 100, 115, 10, 123, 0, 32, + 111, 112, 101, 114, 116, 105, 101, 115, + 10, 123, 0, 32, 10, 47, 97, 99, + 105, 109, 0, 32, 10, 0, 32, 42, + 47, 98, 108, 110, 105, 10, 47, 108, + 114, 125, 0, 32, 65, 90, 97, 122, 10, 0, 32, 42, 47, 95, 48, 57, - 65, 90, 97, 122, 59, 10, 47, 99, - 100, 101, 105, 108, 109, 112, 125, 0, - 32, 10, 0, 32, 42, 47, 111, 9, - 10, 13, 32, 47, 0, 31, 10, 0, - 32, 10, 0, 32, 101, 9, 10, 13, - 32, 47, 0, 31, 10, 0, 32, 10, - 0, 32, 118, 59, 109, 110, 59, 59, - 101, 10, 0, 32, 101, 114, 59, 0 + 65, 90, 97, 122, 95, 101, 48, 57, + 65, 90, 97, 122, 95, 101, 48, 57, + 65, 90, 97, 122, 9, 13, 32, 47, + 59, 10, 47, 125, 0, 32, 65, 90, + 97, 122, 10, 0, 32, 42, 47, 9, + 13, 32, 42, 95, 48, 57, 65, 90, + 97, 122, 9, 13, 32, 47, 59, 10, + 47, 103, 112, 115, 125, 0, 32, 10, + 0, 32, 42, 47, 101, 97, 101, 59, + 10, 47, 125, 0, 32, 65, 90, 97, + 122, 10, 0, 32, 42, 47, 95, 48, + 57, 65, 90, 97, 122, 59, 10, 47, + 108, 111, 112, 114, 125, 0, 32, 10, + 0, 32, 42, 47, 101, 98, 97, 101, + 9, 13, 32, 47, 59, 10, 47, 125, + 0, 32, 65, 90, 97, 122, 10, 0, + 32, 42, 47, 95, 48, 57, 65, 90, + 97, 122, 59, 10, 47, 99, 100, 101, + 105, 108, 109, 112, 125, 0, 32, 10, + 0, 32, 42, 47, 111, 101, 118, 59, + 109, 110, 59, 59, 101, 10, 0, 32, + 101, 114, 59, 0 }; static const char _eo_tokenizer_single_lengths[] = { @@ -593,35 +554,32 @@ static const char _eo_tokenizer_single_lengths[] = { 5, 6, 4, 1, 1, 2, 2, 3, 2, 3, 1, 3, 2, 3, 2, 3, 3, 2, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 1, - 1, 2, 2, 3, 2, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 1, - 1, 2, 2, 3, 2, 1, 1, 1, - 1, 2, 2, 2, 4, 2, 6, 1, - 1, 2, 2, 3, 2, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, - 5, 3, 2, 1, 1, 1, 1, 1, - 6, 3, 2, 3, 2, 1, 1, 1, - 1, 1, 2, 3, 3, 1, 3, 2, - 8, 4, 1, 6, 5, 4, 3, 1, - 1, 1, 1, 1, 3, 3, 1, 2, - 1, 0, 1, 2, 2, 3, 1, 1, - 2, 2, 3, 4, 6, 1, 4, 1, - 1, 1, 1, 1, 1, 1, 2, 2, - 1, 4, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, - 1, 1, 2, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 2, 1, 1, 1, 1, 2, 2, 2, + 4, 2, 6, 1, 1, 2, 2, 3, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 2, 6, 1, 2, 1, 1, 1, - 1, 5, 1, 2, 1, 2, 2, 4, - 0, 1, 3, 1, 2, 5, 4, 0, - 1, 6, 1, 2, 1, 1, 1, 1, - 3, 1, 2, 1, 1, 7, 1, 2, - 1, 1, 1, 1, 4, 0, 1, 3, - 1, 2, 1, 1, 10, 1, 2, 1, - 5, 1, 1, 1, 5, 1, 1, 1, - 1, 2, 1, 1, 1, 1, 1, 1, - 1 + 1, 2, 2, 2, 5, 3, 2, 1, + 1, 1, 1, 1, 6, 3, 2, 3, + 2, 1, 1, 1, 1, 1, 2, 3, + 3, 1, 3, 2, 8, 4, 1, 6, + 5, 4, 3, 1, 1, 1, 1, 1, + 3, 3, 1, 2, 1, 0, 1, 2, + 2, 3, 1, 1, 2, 2, 3, 4, + 6, 1, 4, 1, 1, 1, 1, 1, + 1, 1, 2, 2, 1, 4, 3, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 2, 1, 1, 2, 1, + 1, 1, 1, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 2, 6, 1, + 2, 1, 1, 1, 1, 5, 1, 2, + 1, 2, 2, 4, 0, 1, 3, 1, + 2, 5, 4, 0, 1, 6, 1, 2, + 1, 1, 1, 1, 3, 1, 2, 1, + 1, 7, 1, 2, 1, 1, 1, 1, + 4, 0, 1, 3, 1, 2, 1, 1, + 10, 1, 2, 1, 1, 1, 1, 2, + 1, 1, 1, 1, 1, 1, 1 }; static const char _eo_tokenizer_range_lengths[] = { @@ -644,35 +602,32 @@ static const char _eo_tokenizer_range_lengths[] = { 3, 3, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 1, 0, - 0, 4, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 1, 0, - 0, 4, 0, 0, 1, 0, 0, 0, - 0, 1, 3, 3, 4, 1, 3, 0, - 0, 4, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 3, 3, - 4, 1, 1, 0, 0, 0, 0, 0, - 3, 1, 1, 3, 1, 0, 0, 0, - 0, 0, 1, 3, 2, 3, 4, 1, - 3, 3, 3, 3, 0, 1, 1, 0, - 0, 0, 0, 0, 0, 2, 3, 3, - 0, 2, 3, 3, 1, 1, 0, 0, - 4, 0, 0, 3, 3, 3, 4, 0, - 0, 0, 0, 0, 0, 0, 1, 3, - 3, 4, 1, 3, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1, - 3, 3, 3, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 1, 0, 0, 0, 0, - 0, 3, 1, 0, 3, 3, 3, 0, - 0, 0, 3, 1, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 1, 3, 3, + 4, 1, 3, 0, 0, 4, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 3, 3, 4, 1, 1, 0, + 0, 0, 0, 0, 3, 1, 1, 3, + 1, 0, 0, 0, 0, 0, 1, 3, + 2, 3, 4, 1, 3, 3, 3, 3, 0, 1, 1, 0, 0, 0, 0, 0, - 3, 1, 0, 3, 0, 1, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 3, - 1, 0, 3, 0, 1, 1, 0, 0, - 1, 1, 1, 0, 1, 1, 1, 0, - 0, 0, 0, 0, 0, 1, 0, 0, - 0 + 0, 2, 3, 3, 0, 2, 3, 3, + 1, 1, 0, 0, 4, 0, 0, 3, + 3, 3, 4, 0, 0, 0, 0, 0, + 0, 0, 1, 3, 3, 4, 1, 3, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 3, 3, 3, 0, + 0, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 1, 1, + 0, 0, 0, 0, 0, 3, 1, 0, + 3, 3, 3, 0, 0, 0, 3, 1, + 0, 3, 0, 0, 0, 1, 1, 0, + 0, 0, 0, 0, 3, 1, 0, 3, + 0, 1, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 3, 1, 0, 3, 0, + 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, 0 }; static const short _eo_tokenizer_index_offsets[] = { @@ -695,35 +650,32 @@ static const short _eo_tokenizer_index_offsets[] = { 526, 535, 545, 550, 552, 554, 561, 564, 568, 571, 575, 577, 585, 589, 593, 596, 600, 608, 611, 615, 617, 619, 621, 623, - 625, 627, 629, 631, 633, 635, 640, 644, - 646, 648, 655, 658, 662, 666, 668, 670, - 672, 674, 676, 678, 680, 682, 687, 691, - 693, 695, 702, 705, 709, 713, 715, 717, - 719, 721, 725, 731, 737, 746, 750, 760, - 762, 764, 771, 774, 778, 784, 786, 788, - 790, 792, 794, 796, 798, 800, 804, 810, - 816, 826, 831, 835, 837, 839, 841, 843, - 845, 855, 860, 864, 871, 875, 877, 879, - 881, 883, 885, 889, 896, 902, 907, 915, - 919, 931, 939, 944, 954, 960, 966, 971, - 973, 975, 977, 979, 981, 985, 991, 996, - 1002, 1004, 1007, 1012, 1018, 1022, 1027, 1029, - 1031, 1038, 1041, 1045, 1053, 1063, 1068, 1077, - 1079, 1081, 1083, 1085, 1087, 1089, 1091, 1095, - 1101, 1106, 1115, 1120, 1125, 1127, 1129, 1131, - 1133, 1135, 1137, 1139, 1141, 1143, 1145, 1147, - 1151, 1156, 1161, 1167, 1169, 1171, 1173, 1175, - 1177, 1181, 1183, 1185, 1187, 1189, 1191, 1193, - 1195, 1197, 1201, 1209, 1212, 1215, 1217, 1219, - 1221, 1223, 1232, 1235, 1238, 1243, 1249, 1255, - 1260, 1261, 1263, 1270, 1273, 1276, 1285, 1290, - 1291, 1293, 1301, 1304, 1307, 1309, 1311, 1313, - 1315, 1322, 1325, 1328, 1333, 1335, 1344, 1347, - 1350, 1352, 1354, 1356, 1358, 1363, 1364, 1366, - 1373, 1376, 1379, 1384, 1386, 1398, 1401, 1404, - 1406, 1413, 1416, 1419, 1421, 1428, 1431, 1434, - 1436, 1438, 1441, 1443, 1445, 1447, 1450, 1452, - 1454 + 625, 627, 629, 631, 633, 635, 637, 641, + 643, 645, 647, 649, 651, 653, 655, 657, + 659, 663, 665, 667, 669, 671, 675, 681, + 687, 696, 700, 710, 712, 714, 721, 724, + 728, 734, 736, 738, 740, 742, 744, 746, + 748, 750, 754, 760, 766, 776, 781, 785, + 787, 789, 791, 793, 795, 805, 810, 814, + 821, 825, 827, 829, 831, 833, 835, 839, + 846, 852, 857, 865, 869, 881, 889, 894, + 904, 910, 916, 921, 923, 925, 927, 929, + 931, 935, 941, 946, 952, 954, 957, 962, + 968, 972, 977, 979, 981, 988, 991, 995, + 1003, 1013, 1018, 1027, 1029, 1031, 1033, 1035, + 1037, 1039, 1041, 1045, 1051, 1056, 1065, 1070, + 1075, 1077, 1079, 1081, 1083, 1085, 1087, 1089, + 1091, 1093, 1095, 1097, 1101, 1106, 1111, 1117, + 1119, 1121, 1123, 1125, 1127, 1131, 1133, 1135, + 1137, 1139, 1141, 1143, 1145, 1147, 1151, 1159, + 1162, 1165, 1167, 1169, 1171, 1173, 1182, 1185, + 1188, 1193, 1199, 1205, 1210, 1211, 1213, 1220, + 1223, 1226, 1235, 1240, 1241, 1243, 1251, 1254, + 1257, 1259, 1261, 1263, 1265, 1272, 1275, 1278, + 1283, 1285, 1294, 1297, 1300, 1302, 1304, 1306, + 1308, 1313, 1314, 1316, 1323, 1326, 1329, 1334, + 1336, 1348, 1351, 1354, 1356, 1358, 1360, 1362, + 1365, 1367, 1369, 1371, 1374, 1376, 1378 }; static const short _eo_tokenizer_indicies[] = { @@ -806,272 +758,250 @@ static const short _eo_tokenizer_indicies[] = { 223, 224, 222, 223, 224, 225, 222, 227, 226, 228, 214, 229, 214, 230, 214, 231, 214, 232, 214, 233, 214, 234, 214, 235, - 214, 236, 214, 238, 239, 240, 237, 214, - 242, 243, 241, 214, 245, 244, 246, 244, - 247, 248, 246, 248, 248, 248, 244, 250, - 251, 249, 250, 251, 252, 249, 253, 254, - 240, 214, 255, 214, 256, 214, 257, 214, - 258, 214, 259, 214, 260, 214, 261, 214, - 262, 214, 264, 265, 266, 263, 214, 268, - 269, 267, 214, 271, 270, 272, 270, 273, - 274, 272, 274, 274, 274, 270, 276, 277, - 275, 276, 277, 278, 275, 279, 280, 266, - 214, 281, 214, 282, 214, 283, 214, 284, - 214, 285, 286, 284, 214, 287, 289, 286, - 288, 288, 214, 290, 290, 290, 290, 290, - 214, 292, 290, 293, 290, 291, 290, 290, - 290, 214, 295, 296, 294, 214, 296, 287, - 296, 296, 297, 289, 286, 288, 288, 214, - 298, 214, 299, 214, 300, 301, 299, 301, - 301, 301, 214, 303, 304, 302, 303, 304, - 305, 302, 307, 309, 306, 308, 308, 214, - 310, 214, 311, 214, 312, 214, 313, 214, - 314, 214, 315, 214, 316, 214, 317, 214, - 318, 319, 317, 214, 320, 322, 319, 321, - 321, 214, 324, 323, 323, 323, 323, 214, - 326, 324, 327, 323, 328, 325, 323, 323, - 323, 214, 330, 319, 331, 329, 214, 332, - 333, 331, 214, 334, 214, 335, 214, 336, - 214, 337, 214, 338, 214, 340, 341, 340, - 340, 342, 344, 339, 343, 343, 214, 346, - 347, 348, 345, 214, 349, 350, 347, 214, - 320, 319, 322, 319, 321, 321, 214, 351, - 352, 348, 214, 353, 214, 354, 214, 355, - 214, 356, 214, 357, 214, 358, 359, 357, - 214, 360, 361, 362, 359, 363, 363, 214, - 361, 361, 361, 364, 364, 214, 365, 365, - 365, 365, 214, 367, 368, 365, 366, 365, - 365, 365, 214, 370, 362, 369, 214, 362, - 372, 362, 362, 373, 361, 362, 374, 371, - 363, 363, 214, 372, 361, 362, 374, 371, - 363, 363, 214, 375, 375, 375, 375, 214, - 376, 376, 376, 377, 378, 375, 375, 375, - 375, 214, 379, 379, 379, 361, 362, 214, - 381, 380, 382, 383, 380, 214, 381, 382, - 383, 380, 214, 384, 214, 385, 214, 386, - 214, 387, 214, 388, 214, 389, 389, 389, - 214, 389, 389, 389, 390, 390, 214, 391, - 391, 391, 391, 214, 392, 391, 391, 391, - 391, 214, 393, 214, 394, 394, 214, 395, - 395, 395, 395, 214, 396, 395, 395, 395, - 395, 214, 398, 383, 397, 214, 349, 347, - 350, 347, 214, 399, 214, 400, 214, 401, - 402, 400, 402, 402, 402, 214, 404, 405, - 403, 404, 405, 406, 403, 408, 409, 410, - 412, 407, 411, 411, 214, 413, 346, 413, - 413, 347, 348, 345, 414, 414, 214, 415, - 415, 415, 415, 214, 417, 418, 415, 419, - 416, 415, 415, 415, 214, 323, 214, 420, - 214, 421, 214, 422, 214, 423, 214, 424, - 214, 425, 214, 426, 427, 425, 214, 428, - 430, 427, 429, 429, 214, 431, 431, 431, - 431, 214, 433, 434, 431, 435, 432, 431, - 431, 431, 214, 437, 438, 430, 436, 214, - 439, 438, 429, 429, 214, 440, 214, 441, - 214, 442, 214, 443, 214, 444, 214, 445, - 214, 446, 214, 447, 214, 448, 214, 449, - 214, 450, 214, 451, 452, 450, 214, 453, - 452, 454, 454, 214, 455, 455, 455, 455, - 214, 456, 455, 455, 455, 455, 214, 457, - 214, 458, 214, 459, 214, 460, 214, 461, - 214, 462, 463, 461, 214, 464, 214, 465, - 214, 466, 214, 467, 214, 468, 214, 469, - 214, 470, 214, 471, 214, 472, 473, 471, - 214, 476, 477, 478, 479, 480, 481, 475, - 474, 476, 475, 482, 1, 5, 483, 484, - 483, 485, 483, 486, 483, 487, 483, 490, - 491, 493, 494, 495, 489, 492, 492, 488, - 490, 489, 496, 498, 51, 497, 54, 54, - 54, 54, 497, 54, 499, 54, 54, 54, - 497, 54, 500, 54, 54, 54, 497, 79, - 79, 79, 80, 501, 502, 504, 503, 507, - 508, 510, 506, 509, 509, 505, 507, 506, - 511, 90, 94, 512, 96, 96, 96, 96, - 96, 96, 96, 96, 512, 99, 99, 99, - 100, 513, 514, 516, 515, 519, 520, 521, - 522, 523, 524, 518, 517, 519, 518, 525, - 110, 114, 526, 527, 526, 528, 526, 529, - 526, 531, 530, 534, 535, 537, 533, 536, - 536, 532, 534, 533, 538, 129, 133, 539, - 137, 137, 137, 137, 539, 541, 540, 544, - 545, 546, 547, 548, 549, 550, 543, 542, - 544, 543, 551, 553, 154, 552, 554, 552, - 555, 552, 556, 552, 557, 552, 190, 190, - 190, 191, 558, 559, 561, 560, 564, 565, - 567, 563, 566, 566, 562, 564, 563, 568, - 201, 205, 569, 209, 209, 209, 209, 569, - 571, 570, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 573, 572, 574, 573, - 584, 586, 226, 585, 587, 585, 243, 590, - 243, 243, 591, 589, 588, 590, 589, 588, - 594, 593, 592, 595, 585, 269, 598, 269, - 269, 599, 597, 596, 598, 597, 596, 602, - 601, 600, 603, 585, 605, 604, 606, 607, - 585, 609, 608, 611, 610, 612, 585, 615, - 614, 613, 616, 585, 617, 585, 619, 618, - 0 + 214, 236, 214, 237, 214, 238, 239, 237, + 214, 240, 214, 241, 214, 242, 214, 243, + 214, 244, 214, 245, 214, 246, 214, 247, + 214, 248, 214, 249, 250, 248, 214, 251, + 214, 252, 214, 253, 214, 254, 214, 255, + 256, 254, 214, 257, 259, 256, 258, 258, + 214, 260, 260, 260, 260, 260, 214, 262, + 260, 263, 260, 261, 260, 260, 260, 214, + 265, 266, 264, 214, 266, 257, 266, 266, + 267, 259, 256, 258, 258, 214, 268, 214, + 269, 214, 270, 271, 269, 271, 271, 271, + 214, 273, 274, 272, 273, 274, 275, 272, + 277, 279, 276, 278, 278, 214, 280, 214, + 281, 214, 282, 214, 283, 214, 284, 214, + 285, 214, 286, 214, 287, 214, 288, 289, + 287, 214, 290, 292, 289, 291, 291, 214, + 294, 293, 293, 293, 293, 214, 296, 294, + 297, 293, 298, 295, 293, 293, 293, 214, + 300, 289, 301, 299, 214, 302, 303, 301, + 214, 304, 214, 305, 214, 306, 214, 307, + 214, 308, 214, 310, 311, 310, 310, 312, + 314, 309, 313, 313, 214, 316, 317, 318, + 315, 214, 319, 320, 317, 214, 290, 289, + 292, 289, 291, 291, 214, 321, 322, 318, + 214, 323, 214, 324, 214, 325, 214, 326, + 214, 327, 214, 328, 329, 327, 214, 330, + 331, 332, 329, 333, 333, 214, 331, 331, + 331, 334, 334, 214, 335, 335, 335, 335, + 214, 337, 338, 335, 336, 335, 335, 335, + 214, 340, 332, 339, 214, 332, 342, 332, + 332, 343, 331, 332, 344, 341, 333, 333, + 214, 342, 331, 332, 344, 341, 333, 333, + 214, 345, 345, 345, 345, 214, 346, 346, + 346, 347, 348, 345, 345, 345, 345, 214, + 349, 349, 349, 331, 332, 214, 351, 350, + 352, 353, 350, 214, 351, 352, 353, 350, + 214, 354, 214, 355, 214, 356, 214, 357, + 214, 358, 214, 359, 359, 359, 214, 359, + 359, 359, 360, 360, 214, 361, 361, 361, + 361, 214, 362, 361, 361, 361, 361, 214, + 363, 214, 364, 364, 214, 365, 365, 365, + 365, 214, 366, 365, 365, 365, 365, 214, + 368, 353, 367, 214, 319, 317, 320, 317, + 214, 369, 214, 370, 214, 371, 372, 370, + 372, 372, 372, 214, 374, 375, 373, 374, + 375, 376, 373, 378, 379, 380, 382, 377, + 381, 381, 214, 383, 316, 383, 383, 317, + 318, 315, 384, 384, 214, 385, 385, 385, + 385, 214, 387, 388, 385, 389, 386, 385, + 385, 385, 214, 293, 214, 390, 214, 391, + 214, 392, 214, 393, 214, 394, 214, 395, + 214, 396, 397, 395, 214, 398, 400, 397, + 399, 399, 214, 401, 401, 401, 401, 214, + 403, 404, 401, 405, 402, 401, 401, 401, + 214, 407, 408, 400, 406, 214, 409, 408, + 399, 399, 214, 410, 214, 411, 214, 412, + 214, 413, 214, 414, 214, 415, 214, 416, + 214, 417, 214, 418, 214, 419, 214, 420, + 214, 421, 422, 420, 214, 423, 422, 424, + 424, 214, 425, 425, 425, 425, 214, 426, + 425, 425, 425, 425, 214, 427, 214, 428, + 214, 429, 214, 430, 214, 431, 214, 432, + 433, 431, 214, 434, 214, 435, 214, 436, + 214, 437, 214, 438, 214, 439, 214, 440, + 214, 441, 214, 442, 443, 441, 214, 446, + 447, 448, 449, 450, 451, 445, 444, 446, + 445, 452, 1, 5, 453, 454, 453, 455, + 453, 456, 453, 457, 453, 460, 461, 463, + 464, 465, 459, 462, 462, 458, 460, 459, + 466, 468, 51, 467, 54, 54, 54, 54, + 467, 54, 469, 54, 54, 54, 467, 54, + 470, 54, 54, 54, 467, 79, 79, 79, + 80, 471, 472, 474, 473, 477, 478, 480, + 476, 479, 479, 475, 477, 476, 481, 90, + 94, 482, 96, 96, 96, 96, 96, 96, + 96, 96, 482, 99, 99, 99, 100, 483, + 484, 486, 485, 489, 490, 491, 492, 493, + 494, 488, 487, 489, 488, 495, 110, 114, + 496, 497, 496, 498, 496, 499, 496, 501, + 500, 504, 505, 507, 503, 506, 506, 502, + 504, 503, 508, 129, 133, 509, 137, 137, + 137, 137, 509, 511, 510, 514, 515, 516, + 517, 518, 519, 520, 513, 512, 514, 513, + 521, 523, 154, 522, 524, 522, 525, 522, + 526, 522, 527, 522, 190, 190, 190, 191, + 528, 529, 531, 530, 534, 535, 537, 533, + 536, 536, 532, 534, 533, 538, 201, 205, + 539, 209, 209, 209, 209, 539, 541, 540, + 544, 545, 546, 547, 548, 549, 550, 551, + 552, 553, 543, 542, 544, 543, 554, 556, + 226, 555, 557, 555, 558, 555, 559, 555, + 561, 560, 562, 563, 555, 565, 564, 567, + 566, 568, 555, 571, 570, 569, 572, 555, + 573, 555, 575, 574, 0 }; static const short _eo_tokenizer_trans_targs[] = { - 306, 0, 0, 1, 306, 2, 306, 4, + 294, 0, 0, 1, 294, 2, 294, 4, 5, 6, 7, 8, 9, 10, 10, 11, - 12, 13, 13, 306, 13, 13, 306, 15, + 12, 13, 13, 294, 13, 13, 294, 15, 16, 17, 10, 19, 20, 21, 22, 23, - 24, 25, 10, 27, 28, 29, 10, 313, - 31, 31, 32, 33, 313, 33, 34, 34, - 34, 35, 313, 36, 313, 38, 37, 39, - 40, 41, 40, 41, 41, 313, 43, 44, - 45, 46, 47, 48, 49, 313, 51, 52, - 53, 54, 55, 56, 57, 319, 313, 58, + 24, 25, 10, 27, 28, 29, 10, 301, + 31, 31, 32, 33, 301, 33, 34, 34, + 34, 35, 301, 36, 301, 38, 37, 39, + 40, 41, 40, 41, 41, 301, 43, 44, + 45, 46, 47, 48, 49, 301, 51, 52, + 53, 54, 55, 56, 57, 307, 301, 58, 59, 60, 61, 61, 62, 62, 62, 63, - 320, 322, 64, 64, 65, 322, 66, 322, - 67, 326, 322, 68, 69, 70, 71, 71, - 72, 72, 72, 73, 327, 329, 74, 74, - 75, 329, 76, 329, 78, 78, 329, 80, - 81, 82, 83, 83, 329, 85, 85, 329, - 336, 86, 86, 87, 336, 88, 336, 90, - 90, 89, 336, 90, 90, 336, 341, 92, - 92, 93, 94, 341, 94, 95, 95, 95, - 96, 341, 97, 341, 99, 100, 101, 102, - 103, 104, 105, 341, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 341, 118, - 119, 120, 121, 121, 341, 123, 124, 125, - 126, 127, 128, 129, 348, 341, 130, 131, - 132, 133, 133, 134, 134, 134, 135, 349, - 351, 136, 136, 137, 351, 138, 351, 140, - 140, 139, 351, 140, 140, 351, 356, 142, - 142, 143, 144, 356, 144, 145, 145, 145, - 146, 356, 147, 356, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 158, 360, - 164, 158, 158, 360, 356, 160, 161, 161, - 162, 162, 162, 163, 362, 164, 356, 166, - 167, 168, 169, 170, 171, 172, 173, 174, - 174, 364, 180, 174, 174, 364, 356, 176, - 177, 177, 178, 178, 178, 179, 366, 180, - 356, 182, 183, 184, 185, 185, 186, 186, - 187, 368, 188, 189, 189, 190, 189, 189, - 190, 191, 192, 193, 193, 194, 194, 194, - 195, 196, 186, 186, 187, 368, 198, 199, - 200, 201, 202, 203, 204, 205, 205, 206, - 206, 207, 370, 208, 263, 209, 209, 206, - 210, 209, 209, 210, 210, 211, 212, 213, - 214, 215, 216, 217, 260, 217, 218, 261, - 220, 217, 217, 218, 220, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 226, 227, - 227, 228, 232, 234, 229, 230, 231, 231, - 232, 231, 231, 233, 233, 254, 237, 235, - 236, 228, 232, 236, 238, 238, 239, 253, - 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 252, 252, 255, - 256, 256, 257, 257, 257, 258, 259, 233, - 233, 228, 232, 234, 237, 260, 261, 262, - 217, 217, 218, 220, 265, 266, 267, 268, - 269, 270, 270, 271, 271, 272, 371, 273, - 274, 274, 275, 371, 274, 274, 275, 275, - 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 287, 288, 288, 289, 290, - 373, 292, 293, 294, 295, 296, 296, 356, - 298, 299, 300, 301, 302, 303, 304, 305, - 305, 356, 306, 307, 307, 308, 309, 310, - 311, 312, 306, 306, 3, 14, 18, 26, - 313, 314, 314, 315, 316, 317, 318, 321, - 313, 313, 30, 42, 50, 313, 313, 313, - 313, 322, 323, 323, 324, 325, 328, 322, - 322, 322, 322, 322, 322, 329, 330, 330, - 331, 332, 333, 334, 335, 329, 329, 77, - 79, 84, 329, 329, 336, 337, 337, 338, - 339, 340, 336, 336, 336, 336, 341, 342, - 342, 343, 344, 345, 346, 347, 350, 341, - 341, 91, 98, 106, 117, 122, 341, 341, - 341, 341, 351, 352, 352, 353, 354, 355, - 351, 351, 351, 351, 356, 357, 357, 358, - 359, 363, 367, 369, 372, 374, 375, 376, - 356, 356, 141, 148, 356, 361, 361, 159, - 356, 361, 361, 165, 356, 365, 365, 175, - 356, 365, 365, 181, 356, 356, 197, 264, - 356, 356, 356, 356, 276, 356, 373, 373, - 291, 297, 356, 356 + 308, 310, 64, 64, 65, 310, 66, 310, + 67, 314, 310, 68, 69, 70, 71, 71, + 72, 72, 72, 73, 315, 317, 74, 74, + 75, 317, 76, 317, 78, 78, 317, 80, + 81, 82, 83, 83, 317, 85, 85, 317, + 324, 86, 86, 87, 324, 88, 324, 90, + 90, 89, 324, 90, 90, 324, 329, 92, + 92, 93, 94, 329, 94, 95, 95, 95, + 96, 329, 97, 329, 99, 100, 101, 102, + 103, 104, 105, 329, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 329, 118, + 119, 120, 121, 121, 329, 123, 124, 125, + 126, 127, 128, 129, 336, 329, 130, 131, + 132, 133, 133, 134, 134, 134, 135, 337, + 339, 136, 136, 137, 339, 138, 339, 140, + 140, 139, 339, 140, 140, 339, 344, 142, + 142, 143, 144, 344, 144, 145, 145, 145, + 146, 344, 147, 344, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 158, 344, + 160, 161, 162, 163, 164, 165, 166, 167, + 168, 168, 344, 170, 171, 172, 173, 173, + 174, 174, 175, 350, 176, 177, 177, 178, + 177, 177, 178, 179, 180, 181, 181, 182, + 182, 182, 183, 184, 174, 174, 175, 350, + 186, 187, 188, 189, 190, 191, 192, 193, + 193, 194, 194, 195, 352, 196, 251, 197, + 197, 194, 198, 197, 197, 198, 198, 199, + 200, 201, 202, 203, 204, 205, 248, 205, + 206, 249, 208, 205, 205, 206, 208, 206, + 207, 208, 209, 210, 211, 212, 213, 214, + 214, 215, 215, 216, 220, 222, 217, 218, + 219, 219, 220, 219, 219, 221, 221, 242, + 225, 223, 224, 216, 220, 224, 226, 226, + 227, 241, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 240, + 240, 243, 244, 244, 245, 245, 245, 246, + 247, 221, 221, 216, 220, 222, 225, 248, + 249, 250, 205, 205, 206, 208, 253, 254, + 255, 256, 257, 258, 258, 259, 259, 260, + 353, 261, 262, 262, 263, 353, 262, 262, + 263, 263, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 275, 276, 276, + 277, 278, 355, 280, 281, 282, 283, 284, + 284, 344, 286, 287, 288, 289, 290, 291, + 292, 293, 293, 344, 294, 295, 295, 296, + 297, 298, 299, 300, 294, 294, 3, 14, + 18, 26, 301, 302, 302, 303, 304, 305, + 306, 309, 301, 301, 30, 42, 50, 301, + 301, 301, 301, 310, 311, 311, 312, 313, + 316, 310, 310, 310, 310, 310, 310, 317, + 318, 318, 319, 320, 321, 322, 323, 317, + 317, 77, 79, 84, 317, 317, 324, 325, + 325, 326, 327, 328, 324, 324, 324, 324, + 329, 330, 330, 331, 332, 333, 334, 335, + 338, 329, 329, 91, 98, 106, 117, 122, + 329, 329, 329, 329, 339, 340, 340, 341, + 342, 343, 339, 339, 339, 339, 344, 345, + 345, 346, 347, 348, 349, 351, 354, 356, + 357, 358, 344, 344, 141, 148, 159, 169, + 344, 344, 185, 252, 344, 344, 344, 344, + 264, 344, 355, 355, 279, 285, 344, 344 }; static const short _eo_tokenizer_trans_actions[] = { - 227, 0, 1, 0, 217, 0, 250, 0, - 0, 0, 0, 0, 0, 45, 0, 3, - 0, 51, 340, 343, 0, 1, 219, 0, - 0, 0, 43, 0, 0, 0, 0, 0, - 0, 0, 49, 0, 0, 0, 47, 77, - 0, 1, 0, 0, 61, 1, 3, 0, - 1, 0, 59, 0, 229, 0, 0, 0, - 5, 259, 0, 3, 0, 262, 0, 0, - 0, 0, 0, 3, 0, 256, 0, 0, - 0, 0, 0, 3, 0, 352, 75, 0, + 211, 0, 1, 0, 201, 0, 234, 0, + 0, 0, 0, 0, 0, 37, 0, 3, + 0, 43, 306, 309, 0, 1, 203, 0, + 0, 0, 35, 0, 0, 0, 0, 0, + 0, 0, 41, 0, 0, 0, 39, 69, + 0, 1, 0, 0, 53, 1, 3, 0, + 1, 0, 51, 0, 213, 0, 0, 0, + 5, 243, 0, 3, 0, 246, 0, 0, + 0, 0, 0, 3, 0, 240, 0, 0, + 0, 0, 0, 3, 0, 318, 67, 0, 0, 0, 0, 1, 3, 0, 1, 0, - 0, 95, 0, 1, 0, 79, 0, 232, - 0, 355, 93, 0, 0, 0, 0, 1, - 3, 0, 1, 0, 0, 115, 0, 1, - 0, 97, 0, 235, 0, 1, 99, 0, - 0, 0, 0, 1, 103, 0, 1, 101, - 131, 0, 1, 0, 117, 0, 238, 7, - 268, 0, 271, 0, 1, 119, 153, 0, - 1, 0, 0, 135, 1, 3, 0, 1, - 0, 133, 0, 241, 0, 0, 0, 0, - 0, 3, 0, 277, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 280, 0, - 0, 0, 0, 1, 137, 0, 0, 0, - 0, 0, 3, 0, 358, 151, 0, 0, + 0, 87, 0, 1, 0, 71, 0, 216, + 0, 321, 85, 0, 0, 0, 0, 1, + 3, 0, 1, 0, 0, 107, 0, 1, + 0, 89, 0, 219, 0, 1, 91, 0, + 0, 0, 0, 1, 95, 0, 1, 93, + 123, 0, 1, 0, 109, 0, 222, 7, + 252, 0, 255, 0, 1, 111, 145, 0, + 1, 0, 0, 127, 1, 3, 0, 1, + 0, 125, 0, 225, 0, 0, 0, 0, + 0, 3, 0, 261, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 264, 0, + 0, 0, 0, 1, 129, 0, 0, 0, + 0, 0, 3, 0, 324, 143, 0, 0, 0, 0, 1, 3, 0, 1, 0, 0, - 169, 0, 1, 0, 155, 0, 244, 9, - 283, 0, 286, 0, 1, 157, 215, 0, - 1, 0, 0, 173, 1, 3, 0, 1, - 0, 171, 0, 247, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 17, 301, 361, - 0, 0, 1, 57, 211, 0, 0, 1, - 3, 0, 1, 0, 0, 1, 181, 0, - 0, 0, 0, 0, 0, 0, 0, 21, - 304, 364, 0, 0, 1, 57, 213, 0, - 0, 1, 3, 0, 1, 0, 0, 1, - 183, 0, 0, 0, 0, 1, 0, 1, - 3, 0, 0, 13, 292, 13, 0, 1, - 0, 0, 0, 0, 1, 3, 0, 1, - 0, 0, 15, 295, 298, 15, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 1, 3, 0, 0, 0, 27, 319, 27, - 27, 0, 1, 0, 1, 0, 0, 0, - 0, 0, 0, 29, 29, 322, 29, 325, - 29, 0, 1, 0, 0, 1, 0, 1, - 0, 0, 0, 0, 0, 0, 1, 0, - 1, 0, 0, 3, 3, 0, 35, 331, - 35, 0, 1, 0, 1, 0, 0, 0, - 33, 33, 33, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 39, 0, 3, 0, 41, 0, 1, 0, - 0, 1, 3, 0, 1, 0, 0, 37, - 334, 37, 37, 337, 37, 0, 3, 0, - 31, 328, 31, 31, 0, 0, 0, 0, - 0, 0, 1, 0, 1, 3, 0, 0, - 11, 289, 11, 11, 0, 1, 0, 1, + 161, 0, 1, 0, 147, 0, 228, 9, + 267, 0, 270, 0, 1, 149, 199, 0, + 1, 0, 0, 165, 1, 3, 0, 1, + 0, 163, 0, 231, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 173, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 1, 3, 0, - 19, 0, 0, 0, 0, 0, 1, 187, + 0, 1, 175, 0, 0, 0, 0, 1, + 0, 1, 3, 0, 0, 13, 276, 13, + 0, 1, 0, 0, 0, 0, 1, 3, + 0, 1, 0, 0, 15, 279, 282, 15, 0, 0, 0, 0, 0, 0, 0, 0, - 1, 185, 221, 0, 1, 346, 57, 57, - 57, 57, 223, 225, 0, 0, 0, 0, - 65, 0, 1, 346, 349, 349, 349, 0, - 67, 73, 0, 0, 0, 69, 253, 71, - 63, 83, 0, 1, 346, 349, 0, 85, - 91, 87, 265, 89, 81, 107, 0, 1, - 346, 57, 57, 57, 0, 109, 113, 0, - 0, 0, 111, 105, 123, 0, 1, 346, - 349, 0, 125, 129, 127, 121, 141, 0, - 1, 346, 57, 57, 57, 57, 0, 143, - 149, 0, 0, 0, 0, 0, 145, 274, - 147, 139, 161, 0, 1, 346, 349, 0, - 163, 167, 165, 159, 191, 0, 1, 346, - 349, 349, 57, 57, 57, 57, 57, 0, - 193, 209, 0, 0, 203, 0, 1, 0, - 310, 23, 307, 0, 205, 0, 1, 0, - 316, 25, 313, 0, 201, 179, 0, 0, - 199, 177, 197, 175, 0, 195, 0, 1, - 0, 0, 207, 189 + 1, 0, 1, 3, 0, 0, 0, 19, + 285, 19, 19, 0, 1, 0, 1, 0, + 0, 0, 0, 0, 0, 21, 21, 288, + 21, 291, 21, 0, 1, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 3, 3, 0, + 27, 297, 27, 0, 1, 0, 1, 0, + 0, 0, 25, 25, 25, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 31, 0, 3, 0, 33, 0, + 1, 0, 0, 1, 3, 0, 1, 0, + 0, 29, 300, 29, 29, 303, 29, 0, + 3, 0, 23, 294, 23, 23, 0, 0, + 0, 0, 0, 0, 1, 0, 1, 3, + 0, 0, 11, 273, 11, 11, 0, 1, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, + 3, 0, 17, 0, 0, 0, 0, 0, + 1, 179, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 177, 205, 0, 1, 312, + 49, 49, 49, 49, 207, 209, 0, 0, + 0, 0, 57, 0, 1, 312, 315, 315, + 315, 0, 59, 65, 0, 0, 0, 61, + 237, 63, 55, 75, 0, 1, 312, 315, + 0, 77, 83, 79, 249, 81, 73, 99, + 0, 1, 312, 49, 49, 49, 0, 101, + 105, 0, 0, 0, 103, 97, 115, 0, + 1, 312, 315, 0, 117, 121, 119, 113, + 133, 0, 1, 312, 49, 49, 49, 49, + 0, 135, 141, 0, 0, 0, 0, 0, + 137, 258, 139, 131, 153, 0, 1, 312, + 315, 0, 155, 159, 157, 151, 183, 0, + 1, 312, 49, 49, 49, 49, 49, 49, + 49, 0, 185, 197, 0, 0, 0, 0, + 193, 171, 0, 0, 191, 169, 189, 167, + 0, 187, 0, 1, 0, 0, 195, 181 }; static const short _eo_tokenizer_to_state_actions[] = { @@ -1111,18 +1041,15 @@ static const short _eo_tokenizer_to_state_actions[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 53, 0, 0, 0, 0, 0, - 0, 53, 0, 0, 0, 0, 0, 0, - 0, 0, 53, 0, 0, 0, 0, 0, - 0, 53, 0, 0, 0, 0, 0, 0, - 53, 0, 0, 0, 0, 53, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 53, - 0, 0, 0, 0, 53, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0 + 0, 0, 0, 0, 0, 0, 45, 0, + 0, 0, 0, 0, 0, 45, 0, 0, + 0, 0, 0, 0, 0, 0, 45, 0, + 0, 0, 0, 0, 0, 45, 0, 0, + 0, 0, 0, 0, 45, 0, 0, 0, + 0, 45, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 45, 0, 0, 0, 0, + 45, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 }; static const short _eo_tokenizer_from_state_actions[] = { @@ -1162,18 +1089,15 @@ static const short _eo_tokenizer_from_state_actions[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 55, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, - 0, 0, 55, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, - 55, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 55, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0 + 0, 0, 0, 0, 0, 0, 47, 0, + 0, 0, 0, 0, 0, 47, 0, 0, + 0, 0, 0, 0, 0, 0, 47, 0, + 0, 0, 0, 0, 0, 47, 0, 0, + 0, 0, 0, 0, 47, 0, 0, 0, + 0, 47, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 47, 0, 0, 0, 0, + 47, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 }; static const short _eo_tokenizer_eof_trans[] = { @@ -1196,10 +1120,6 @@ static const short _eo_tokenizer_eof_trans[] = { 143, 143, 190, 190, 190, 190, 190, 190, 201, 201, 201, 201, 201, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 245, - 245, 245, 245, 245, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 271, - 271, 271, 271, 271, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, @@ -1215,33 +1135,34 @@ static const short _eo_tokenizer_eof_trans[] = { 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 0, 483, 484, 484, 484, 484, - 484, 0, 497, 498, 498, 498, 498, 502, - 503, 504, 0, 512, 513, 513, 514, 515, - 516, 0, 526, 527, 527, 527, 527, 531, - 0, 539, 540, 540, 541, 0, 552, 553, - 553, 553, 553, 553, 559, 560, 561, 0, - 569, 570, 570, 571, 0, 585, 586, 586, - 589, 589, 593, 586, 597, 597, 601, 586, - 605, 586, 609, 611, 586, 614, 586, 586, - 619 + 215, 215, 215, 215, 215, 215, 215, 215, + 215, 215, 215, 215, 215, 215, 215, 215, + 215, 215, 215, 215, 215, 215, 0, 453, + 454, 454, 454, 454, 454, 0, 467, 468, + 468, 468, 468, 472, 473, 474, 0, 482, + 483, 483, 484, 485, 486, 0, 496, 497, + 497, 497, 497, 501, 0, 509, 510, 510, + 511, 0, 522, 523, 523, 523, 523, 523, + 529, 530, 531, 0, 539, 540, 540, 541, + 0, 555, 556, 556, 556, 556, 561, 556, + 565, 567, 556, 570, 556, 556, 575 }; -static const int eo_tokenizer_start = 306; -static const int eo_tokenizer_first_final = 306; +static const int eo_tokenizer_start = 294; +static const int eo_tokenizer_first_final = 294; static const int eo_tokenizer_error = -1; -static const int eo_tokenizer_en_tokenize_accessor = 313; -static const int eo_tokenizer_en_tokenize_params = 322; -static const int eo_tokenizer_en_tokenize_property = 329; -static const int eo_tokenizer_en_tokenize_properties = 336; -static const int eo_tokenizer_en_tokenize_method = 341; -static const int eo_tokenizer_en_tokenize_methods = 351; -static const int eo_tokenizer_en_tokenize_class = 356; -static const int eo_tokenizer_en_main = 306; +static const int eo_tokenizer_en_tokenize_accessor = 301; +static const int eo_tokenizer_en_tokenize_params = 310; +static const int eo_tokenizer_en_tokenize_property = 317; +static const int eo_tokenizer_en_tokenize_properties = 324; +static const int eo_tokenizer_en_tokenize_method = 329; +static const int eo_tokenizer_en_tokenize_methods = 339; +static const int eo_tokenizer_en_tokenize_class = 344; +static const int eo_tokenizer_en_main = 294; -#line 929 "eo_lexer.rl" +#line 871 "eo_lexer.rl" Eina_Bool @@ -1264,7 +1185,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) } -#line 1268 "eo_lexer.c" +#line 1189 "eo_lexer.c" { toknz->cs = eo_tokenizer_start; toknz->ts = 0; @@ -1272,7 +1193,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) toknz->act = 0; } -#line 951 "eo_lexer.rl" +#line 893 "eo_lexer.rl" while (!done) { @@ -1299,11 +1220,11 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) } -#line 1303 "eo_lexer.c" +#line 1224 "eo_lexer.c" { int _klen; unsigned int _trans; - const unsigned char *_acts; + const char *_acts; unsigned int _nacts; const char *_keys; @@ -1314,11 +1235,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 38: + case 34: #line 1 "NONE" { toknz->ts = ( toknz->p);} break; -#line 1322 "eo_lexer.c" +#line 1243 "eo_lexer.c" } } @@ -1385,28 +1306,28 @@ _eof_trans: switch ( *_acts++ ) { case 0: -#line 298 "eo_lexer.rl" +#line 276 "eo_lexer.rl" { toknz->current_line += 1; DBG("inc[%d] %d", toknz->cs, toknz->current_line); } break; case 1: -#line 303 "eo_lexer.rl" +#line 281 "eo_lexer.rl" { toknz->saved.line = toknz->current_line; DBG("save line[%d] %d", toknz->cs, toknz->current_line); } break; case 2: -#line 308 "eo_lexer.rl" +#line 286 "eo_lexer.rl" { toknz->saved.tok = ( toknz->p); DBG("save token[%d] %p %c", toknz->cs, ( toknz->p), *( toknz->p)); } break; case 3: -#line 381 "eo_lexer.rl" +#line 359 "eo_lexer.rl" { if (toknz->tmp.accessor->ret.type != NULL) ABORT(toknz, "accessor has already a return type"); @@ -1415,7 +1336,7 @@ _eof_trans: } break; case 4: -#line 388 "eo_lexer.rl" +#line 366 "eo_lexer.rl" { if (toknz->tmp.accessor->ret.comment != NULL) ABORT(toknz, "accessor return type has already a comment"); @@ -1424,19 +1345,19 @@ _eof_trans: } break; case 5: -#line 395 "eo_lexer.rl" +#line 373 "eo_lexer.rl" { toknz->tmp.accessor->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; case 6: -#line 407 "eo_lexer.rl" +#line 385 "eo_lexer.rl" { toknz->tmp.accessor_param = _eo_tokenizer_accessor_param_get(toknz, ( toknz->p)); } break; case 7: -#line 411 "eo_lexer.rl" +#line 389 "eo_lexer.rl" { toknz->tmp.accessor_param->attrs = _eo_tokenizer_token_get(toknz, ( toknz->p)); toknz->tmp.accessor->params = @@ -1445,7 +1366,7 @@ _eof_trans: } break; case 8: -#line 438 "eo_lexer.rl" +#line 416 "eo_lexer.rl" { const char *c = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); if (toknz->tmp.param == NULL) @@ -1455,7 +1376,7 @@ _eof_trans: } break; case 9: -#line 446 "eo_lexer.rl" +#line 424 "eo_lexer.rl" { toknz->tmp.param = _eo_tokenizer_param_get(toknz, ( toknz->p)); if (toknz->tmp.prop) @@ -1468,7 +1389,7 @@ _eof_trans: } break; case 10: -#line 536 "eo_lexer.rl" +#line 514 "eo_lexer.rl" { if (toknz->tmp.prop != NULL) ABORT(toknz, "there is a pending property definition %s", toknz->tmp.prop->name); @@ -1476,7 +1397,7 @@ _eof_trans: } break; case 11: -#line 573 "eo_lexer.rl" +#line 551 "eo_lexer.rl" { if (toknz->tmp.meth->ret.type != NULL) ABORT(toknz, "method '%s' has already a return type", toknz->tmp.meth->name); @@ -1485,7 +1406,7 @@ _eof_trans: } break; case 12: -#line 580 "eo_lexer.rl" +#line 558 "eo_lexer.rl" { if (toknz->tmp.meth->ret.comment != NULL) ABORT(toknz, "method '%s' return type has already a comment", toknz->tmp.meth->name); @@ -1494,20 +1415,20 @@ _eof_trans: } break; case 13: -#line 587 "eo_lexer.rl" +#line 565 "eo_lexer.rl" { toknz->tmp.meth->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; case 14: -#line 591 "eo_lexer.rl" +#line 569 "eo_lexer.rl" { toknz->tmp.meth->obj_const = EINA_TRUE; INF(" obj const"); } break; case 15: -#line 647 "eo_lexer.rl" +#line 625 "eo_lexer.rl" { if (toknz->tmp.meth != NULL) ABORT(toknz, "there is a pending method definition %s", toknz->tmp.meth->name); @@ -1515,21 +1436,21 @@ _eof_trans: } break; case 16: -#line 678 "eo_lexer.rl" +#line 656 "eo_lexer.rl" { const char *base = _eo_tokenizer_token_get(toknz, ( toknz->p)); toknz->tmp.str_items = eina_list_append(toknz->tmp.str_items, base); } break; case 17: -#line 729 "eo_lexer.rl" +#line 707 "eo_lexer.rl" { toknz->tmp.event = _eo_tokenizer_event_get(toknz, ( toknz->p)); toknz->tmp.kls->events = eina_list_append(toknz->tmp.kls->events, toknz->tmp.event); } break; case 18: -#line 734 "eo_lexer.rl" +#line 712 "eo_lexer.rl" { if (toknz->tmp.event->comment != NULL) ABORT(toknz, "event %s has already a comment", toknz->tmp.event->name); @@ -1538,74 +1459,38 @@ _eof_trans: } break; case 19: -#line 741 "eo_lexer.rl" - { - if (toknz->tmp.kls->dflt_ctor != NULL) - ABORT(toknz, "A default constructor has already been defined"); - toknz->tmp.kls->dflt_ctor = _eo_tokenizer_dflt_ctor_get(toknz, ( toknz->p)); - } - break; - case 20: -#line 747 "eo_lexer.rl" +#line 719 "eo_lexer.rl" { if (toknz->tmp.kls->legacy_prefix != NULL) ABORT(toknz, "A legacy prefix has already been given"); toknz->tmp.kls->legacy_prefix = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 21: -#line 753 "eo_lexer.rl" - { - if (toknz->tmp.kls->dflt_dtor != NULL) - ABORT(toknz, "A default destructor has already been defined"); - toknz->tmp.kls->dflt_dtor = _eo_tokenizer_dflt_dtor_get(toknz, ( toknz->p)); - } - break; - case 22: -#line 759 "eo_lexer.rl" - { - if (toknz->tmp.kls->dflt_ctor == NULL) - ABORT(toknz, "No default constructor is defined for the comment"); - if (toknz->tmp.kls->dflt_ctor->comment != NULL) - ABORT(toknz, "default constructor %s has already a comment", toknz->tmp.kls->dflt_ctor->name); - toknz->tmp.kls->dflt_ctor->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); - } - break; - case 23: -#line 767 "eo_lexer.rl" - { - if (toknz->tmp.kls->dflt_dtor == NULL) - ABORT(toknz, "No default destructor is defined for the comment"); - if (toknz->tmp.kls->dflt_dtor->comment != NULL) - ABORT(toknz, "default destructor %s has already a comment", toknz->tmp.kls->dflt_dtor->name); - toknz->tmp.kls->dflt_dtor->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); - } - break; - case 24: -#line 781 "eo_lexer.rl" + case 20: +#line 731 "eo_lexer.rl" { toknz->tmp.impl = _eo_tokenizer_implement_get(toknz, ( toknz->p)); toknz->tmp.kls->implements = eina_list_append(toknz->tmp.kls->implements, toknz->tmp.impl); } break; - case 25: -#line 786 "eo_lexer.rl" + case 21: +#line 736 "eo_lexer.rl" { if (toknz->tmp.impl->legacy) ABORT(toknz, "Legacy section already allocated for implement item"); toknz->tmp.impl->legacy = calloc(1, sizeof(Eo_Implement_Legacy_Def)); } break; - case 26: -#line 792 "eo_lexer.rl" + case 22: +#line 742 "eo_lexer.rl" { if (!toknz->tmp.impl->legacy) ABORT(toknz, "No legacy section"); toknz->tmp.impl->legacy->function_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 27: -#line 798 "eo_lexer.rl" + case 23: +#line 748 "eo_lexer.rl" { toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); toknz->tmp.impl->legacy->params = eina_list_append( @@ -1614,60 +1499,60 @@ _eof_trans: toknz->tmp.impl_leg_param->eo_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 28: -#line 806 "eo_lexer.rl" + case 24: +#line 756 "eo_lexer.rl" { toknz->tmp.impl_leg_param->legacy_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 29: -#line 810 "eo_lexer.rl" + case 25: +#line 760 "eo_lexer.rl" { toknz->tmp.impl_leg_param->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); } break; - case 30: -#line 814 "eo_lexer.rl" + case 26: +#line 764 "eo_lexer.rl" { if (!toknz->tmp.impl->legacy) ABORT(toknz, "No legacy section"); toknz->tmp.impl->legacy->ret_type= _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 31: -#line 820 "eo_lexer.rl" + case 27: +#line 770 "eo_lexer.rl" { if (!toknz->tmp.impl->legacy) ABORT(toknz, "No legacy section"); toknz->tmp.impl->legacy->ret_value = _eo_tokenizer_token_get(toknz, ( toknz->p)); } break; - case 32: -#line 895 "eo_lexer.rl" + case 28: +#line 837 "eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR; } break; - case 33: -#line 898 "eo_lexer.rl" + case 29: +#line 840 "eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT; } break; - case 34: -#line 901 "eo_lexer.rl" + case 30: +#line 843 "eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN; } break; - case 35: -#line 904 "eo_lexer.rl" + case 31: +#line 846 "eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE; } break; - case 36: -#line 908 "eo_lexer.rl" + case 32: +#line 850 "eo_lexer.rl" { if (toknz->tmp.kls != NULL) ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name); @@ -1675,12 +1560,12 @@ _eof_trans: toknz->tmp.kls->type = toknz->tmp.kls_type; } break; - case 39: + case 35: #line 1 "NONE" { toknz->te = ( toknz->p)+1;} break; - case 40: -#line 374 "eo_lexer.rl" + case 36: +#line 352 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (toknz->tmp.accessor->comment != NULL) ABORT(toknz, "accessor has already a comment"); @@ -1688,34 +1573,71 @@ _eof_trans: INF(" %s", toknz->tmp.accessor->comment); }} break; - case 41: -#line 313 "eo_lexer.rl" + case 37: +#line 291 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 42: -#line 430 "eo_lexer.rl" + case 38: +#line 408 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 43: -#line 431 "eo_lexer.rl" + case 39: +#line 409 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 44: -#line 399 "eo_lexer.rl" + case 40: +#line 377 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" }"); toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); toknz->tmp.accessor = NULL; toknz->current_nesting--; - { toknz->cs = 329; goto _again;} + { toknz->cs = 317; goto _again;} + }} + break; + case 41: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 42: +#line 404 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 43: +#line 407 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 44: +#line 377 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); + toknz->tmp.accessor = NULL; + toknz->current_nesting--; + { toknz->cs = 317; goto _again;} }} break; case 45: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -1733,48 +1655,11 @@ _eof_trans: }} break; case 46: -#line 426 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 47: -#line 429 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 48: -#line 399 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); - toknz->tmp.accessor = NULL; - toknz->current_nesting--; - { toknz->cs = 329; goto _again;} - }} - break; - case 49: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 50: -#line 429 "eo_lexer.rl" +#line 407 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}} break; - case 51: -#line 322 "eo_lexer.rl" + case 47: +#line 300 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -1792,30 +1677,71 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 52: -#line 313 "eo_lexer.rl" + case 48: +#line 291 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 53: -#line 457 "eo_lexer.rl" + case 49: +#line 435 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" }"); toknz->tmp.param = NULL; toknz->current_nesting--; if (toknz->tmp.prop) - { toknz->cs = 329; goto _again;} + { toknz->cs = 317; goto _again;} else if (toknz->tmp.meth) - { toknz->cs = 341; goto _again;} + { toknz->cs = 329; goto _again;} + else + ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); + }} + break; + case 50: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 51: +#line 451 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 52: +#line 453 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 53: +#line 435 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->tmp.param = NULL; + toknz->current_nesting--; + if (toknz->tmp.prop) + { toknz->cs = 317; goto _again;} + else if (toknz->tmp.meth) + { toknz->cs = 329; goto _again;} else ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); }} break; case 54: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -1833,52 +1759,11 @@ _eof_trans: }} break; case 55: -#line 473 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 56: -#line 475 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 57: -#line 457 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->tmp.param = NULL; - toknz->current_nesting--; - if (toknz->tmp.prop) - { toknz->cs = 329; goto _again;} - else if (toknz->tmp.meth) - { toknz->cs = 341; goto _again;} - else - ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); - }} - break; - case 58: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 59: -#line 475 "eo_lexer.rl" +#line 453 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}} break; - case 60: -#line 322 "eo_lexer.rl" + case 56: +#line 300 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -1896,41 +1781,41 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 61: -#line 313 "eo_lexer.rl" + case 57: +#line 291 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 62: -#line 482 "eo_lexer.rl" + case 58: +#line 460 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" get {"); toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); toknz->current_nesting++; - { toknz->cs = 313; goto _again;} + { toknz->cs = 301; goto _again;} }} break; - case 63: -#line 489 "eo_lexer.rl" + case 59: +#line 467 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" set {"); toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); toknz->current_nesting++; - { toknz->cs = 313; goto _again;} + { toknz->cs = 301; goto _again;} }} break; - case 64: -#line 496 "eo_lexer.rl" + case 60: +#line 474 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" params {"); toknz->current_nesting++; - { toknz->cs = 322; goto _again;} + { toknz->cs = 310; goto _again;} }} break; - case 65: -#line 502 "eo_lexer.rl" + case 61: +#line 480 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (eina_list_count(toknz->tmp.prop->params) == 0) WRN("property '%s' has no parameters.", toknz->tmp.prop->name); @@ -1940,12 +1825,68 @@ _eof_trans: toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); toknz->tmp.prop = NULL; toknz->current_nesting--; - { toknz->cs = 336; goto _again;} + { toknz->cs = 324; goto _again;} + }} + break; + case 62: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 63: +#line 497 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 64: +#line 480 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + if (eina_list_count(toknz->tmp.prop->params) == 0) + WRN("property '%s' has no parameters.", toknz->tmp.prop->name); + if (eina_list_count(toknz->tmp.prop->accessors) == 0) + WRN("property '%s' has no accessors.", toknz->tmp.prop->name); + INF(" }"); + toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); + toknz->tmp.prop = NULL; + toknz->current_nesting--; + { toknz->cs = 324; goto _again;} + }} + break; + case 65: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 66: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ +#line 300 "eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -1963,45 +1904,31 @@ _eof_trans: }} break; case 67: -#line 519 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 291 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("comment[%d] line%03d:%03d", toknz->cs, + toknz->saved.line, toknz->current_line); + }} break; case 68: -#line 502 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - if (eina_list_count(toknz->tmp.prop->params) == 0) - WRN("property '%s' has no parameters.", toknz->tmp.prop->name); - if (eina_list_count(toknz->tmp.prop->accessors) == 0) - WRN("property '%s' has no accessors.", toknz->tmp.prop->name); - INF(" }"); - toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); - toknz->tmp.prop = NULL; - toknz->current_nesting--; - { toknz->cs = 336; goto _again;} +#line 508 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" %s {", toknz->tmp.prop->name); + toknz->current_nesting++; + { toknz->cs = 317; goto _again;} }} break; case 69: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ +#line 520 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 344; goto _again;} }} break; case 70: -#line 322 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2019,31 +1946,39 @@ _eof_trans: }} break; case 71: -#line 313 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("comment[%d] line%03d:%03d", toknz->cs, - toknz->saved.line, toknz->current_line); - }} +#line 529 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 72: -#line 530 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" %s {", toknz->tmp.prop->name); - toknz->current_nesting++; - { toknz->cs = 329; goto _again;} +#line 520 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 344; goto _again;} }} break; case 73: -#line 542 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 356; goto _again;} +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 74: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ +#line 300 "eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2061,57 +1996,7 @@ _eof_trans: }} break; case 75: -#line 551 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 76: -#line 542 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 356; goto _again;} - }} - break; - case 77: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 78: -#line 322 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 79: -#line 560 "eo_lexer.rl" +#line 538 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (toknz->tmp.meth->comment != NULL) ABORT(toknz, "method has already a comment"); @@ -2119,31 +2004,31 @@ _eof_trans: INF(" %s", toknz->tmp.meth->comment); }} break; - case 80: -#line 313 "eo_lexer.rl" + case 76: +#line 291 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 81: -#line 567 "eo_lexer.rl" + case 77: +#line 545 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" params {"); toknz->current_nesting++; - { toknz->cs = 322; goto _again;} + { toknz->cs = 310; goto _again;} }} break; - case 82: -#line 633 "eo_lexer.rl" + case 78: +#line 611 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 83: -#line 634 "eo_lexer.rl" + case 79: +#line 612 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 84: -#line 596 "eo_lexer.rl" + case 80: +#line 574 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ Eina_List **l; if (eina_list_count(toknz->tmp.meth->params) == 0) @@ -2166,12 +2051,66 @@ _eof_trans: *l = eina_list_append(*l, toknz->tmp.meth); toknz->tmp.meth = NULL; toknz->current_nesting--; - { toknz->cs = 351; goto _again;} + { toknz->cs = 339; goto _again;} + }} + break; + case 81: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 82: +#line 606 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 83: +#line 610 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 84: +#line 574 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + Eina_List **l; + if (eina_list_count(toknz->tmp.meth->params) == 0) + WRN("method '%s' has no parameters.", toknz->tmp.meth->name); + INF(" }"); + switch (toknz->current_methods_type) { + case METH_CONSTRUCTOR: + l = &toknz->tmp.kls->constructors; + break; + case METH_DESTRUCTOR: + l = &toknz->tmp.kls->destructors; + break; + case METH_REGULAR: + l = &toknz->tmp.kls->methods; + break; + default: + ABORT(toknz, "unknown method type %d", toknz->current_methods_type); + } + toknz->tmp.meth->type = toknz->current_methods_type; + *l = eina_list_append(*l, toknz->tmp.meth); + toknz->tmp.meth = NULL; + toknz->current_nesting--; + { toknz->cs = 339; goto _again;} }} break; case 85: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2189,43 +2128,12 @@ _eof_trans: }} break; case 86: -#line 628 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 610 "eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}} break; case 87: -#line 632 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 88: -#line 596 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - Eina_List **l; - if (eina_list_count(toknz->tmp.meth->params) == 0) - WRN("method '%s' has no parameters.", toknz->tmp.meth->name); - INF(" }"); - switch (toknz->current_methods_type) { - case METH_CONSTRUCTOR: - l = &toknz->tmp.kls->constructors; - break; - case METH_DESTRUCTOR: - l = &toknz->tmp.kls->destructors; - break; - case METH_REGULAR: - l = &toknz->tmp.kls->methods; - break; - default: - ABORT(toknz, "unknown method type %d", toknz->current_methods_type); - } - toknz->tmp.meth->type = toknz->current_methods_type; - *l = eina_list_append(*l, toknz->tmp.meth); - toknz->tmp.meth = NULL; - toknz->current_nesting--; - { toknz->cs = 351; goto _again;} - }} - break; - case 89: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ +#line 300 "eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2240,15 +2148,35 @@ _eof_trans: toknz->current_nesting, toknz->current_line, *( toknz->p), buf); toknz->cs = eo_tokenizer_error; {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 88: +#line 291 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("comment[%d] line%03d:%03d", toknz->cs, + toknz->saved.line, toknz->current_line); + }} + break; + case 89: +#line 619 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" %s {", toknz->tmp.meth->name); + toknz->current_nesting++; + { toknz->cs = 329; goto _again;} }} break; case 90: -#line 632 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} +#line 631 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; + toknz->current_nesting--; + { toknz->cs = 344; goto _again;} + }} break; case 91: -#line 322 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2266,82 +2194,39 @@ _eof_trans: }} break; case 92: -#line 313 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("comment[%d] line%03d:%03d", toknz->cs, - toknz->saved.line, toknz->current_line); - }} +#line 641 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 93: -#line 641 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" %s {", toknz->tmp.meth->name); - toknz->current_nesting++; - { toknz->cs = 341; goto _again;} +#line 631 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; + toknz->current_nesting--; + { toknz->cs = 344; goto _again;} }} break; case 94: -#line 653 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 356; goto _again;} +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 95: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 96: -#line 663 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 97: -#line 653 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 356; goto _again;} - }} - break; - case 98: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 99: -#line 322 "eo_lexer.rl" +#line 300 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -2359,85 +2244,85 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 100: -#line 672 "eo_lexer.rl" + case 96: +#line 650 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (toknz->tmp.kls->comment != NULL) ABORT(toknz, "class %s has already a comment", toknz->tmp.kls->name); toknz->tmp.kls->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); }} break; - case 101: -#line 313 "eo_lexer.rl" + case 97: +#line 291 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 102: -#line 683 "eo_lexer.rl" + case 98: +#line 661 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ toknz->tmp.kls->inherits = toknz->tmp.str_items; toknz->tmp.str_items = NULL; }} break; - case 103: -#line 688 "eo_lexer.rl" + case 99: +#line 666 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 104: -#line 691 "eo_lexer.rl" + case 100: +#line 669 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 105: -#line 694 "eo_lexer.rl" + case 101: +#line 672 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" constructors {"); toknz->current_methods_type = METH_CONSTRUCTOR; toknz->current_nesting++; - { toknz->cs = 351; goto _again;} + { toknz->cs = 339; goto _again;} }} break; - case 106: -#line 701 "eo_lexer.rl" + case 102: +#line 679 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" destructors {"); toknz->current_methods_type = METH_DESTRUCTOR; toknz->current_nesting++; - { toknz->cs = 351; goto _again;} + { toknz->cs = 339; goto _again;} }} break; - case 107: -#line 708 "eo_lexer.rl" + case 103: +#line 686 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" properties {"); toknz->current_nesting++; - { toknz->cs = 336; goto _again;} + { toknz->cs = 324; goto _again;} }} break; - case 108: -#line 714 "eo_lexer.rl" + case 104: +#line 692 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" begin methods"); toknz->current_methods_type = METH_REGULAR; toknz->current_nesting++; - { toknz->cs = 351; goto _again;} + { toknz->cs = 339; goto _again;} }} break; - case 109: -#line 721 "eo_lexer.rl" + case 105: +#line 699 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF("end class: %s", toknz->tmp.kls->name); toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 306; goto _again;} + { toknz->cs = 294; goto _again;} }} break; - case 110: -#line 322 "eo_lexer.rl" + case 106: +#line 300 "eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -2455,51 +2340,119 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 111: -#line 870 "eo_lexer.rl" + case 107: +#line 814 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 112: -#line 873 "eo_lexer.rl" + case 108: +#line 817 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 113: -#line 683 "eo_lexer.rl" + case 109: +#line 661 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ toknz->tmp.kls->inherits = toknz->tmp.str_items; toknz->tmp.str_items = NULL; }} break; - case 114: -#line 688 "eo_lexer.rl" + case 110: +#line 666 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 115: -#line 691 "eo_lexer.rl" + case 111: +#line 669 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 116: -#line 877 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 117: -#line 878 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 118: -#line 721 "eo_lexer.rl" + case 112: +#line 699 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ INF("end class: %s", toknz->tmp.kls->name); toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 306; goto _again;} + { toknz->cs = 294; goto _again;} }} + break; + case 113: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 114: +#line 300 "eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 115: +#line 291 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("comment[%d] line%03d:%03d", toknz->cs, + toknz->saved.line, toknz->current_line); + }} + break; + case 116: +#line 831 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF("begin class: %s", toknz->tmp.kls->name); + toknz->current_nesting++; + { toknz->cs = 344; goto _again;} + }} + break; + case 117: +#line 300 "eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 118: +#line 865 "eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 119: -#line 322 "eo_lexer.rl" +#line 300 "eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -2518,15 +2471,7 @@ _eof_trans: }} break; case 120: -#line 877 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} - break; - case 121: -#line 878 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} - break; - case 122: -#line 322 "eo_lexer.rl" +#line 300 "eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); char *s, *d; @@ -2544,83 +2489,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 123: -#line 313 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("comment[%d] line%03d:%03d", toknz->cs, - toknz->saved.line, toknz->current_line); - }} - break; - case 124: -#line 889 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF("begin class: %s", toknz->tmp.kls->name); - toknz->current_nesting++; - { toknz->cs = 356; goto _again;} - }} - break; - case 125: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 126: -#line 923 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 127: -#line 322 "eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 128: -#line 322 "eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; -#line 2624 "eo_lexer.c" +#line 2493 "eo_lexer.c" } } @@ -2629,11 +2498,11 @@ _again: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 37: + case 33: #line 1 "NONE" { toknz->ts = 0;} break; -#line 2637 "eo_lexer.c" +#line 2506 "eo_lexer.c" } } @@ -2651,12 +2520,12 @@ _again: _out: {} } -#line 977 "eo_lexer.rl" +#line 919 "eo_lexer.rl" if ( toknz->cs == -#line 2658 "eo_lexer.c" +#line 2527 "eo_lexer.c" -1 -#line 978 "eo_lexer.rl" +#line 920 "eo_lexer.rl" ) { ERR("wrong termination"); @@ -2850,18 +2719,6 @@ eo_tokenizer_database_fill(const char *filename) { database_class_legacy_prefix_set(kls->name, kls->legacy_prefix); } - if (kls->dflt_ctor) - { - Eolian_Function foo_id = database_function_new(kls->dflt_ctor->name, DFLT_CONSTRUCTOR); - database_class_function_add(kls->name, foo_id); - database_function_description_set(foo_id, EOLIAN_COMMENT, kls->dflt_ctor->comment); - } - if (kls->dflt_dtor) - { - Eolian_Function foo_id = database_function_new(kls->dflt_dtor->name, DFLT_DESTRUCTOR); - database_class_function_add(kls->name, foo_id); - database_function_description_set(foo_id, EOLIAN_COMMENT, kls->dflt_dtor->comment); - } EINA_LIST_FOREACH(kls->constructors, l, meth) { Eolian_Function foo_id = database_function_new(meth->name, CONSTRUCTOR); @@ -2945,6 +2802,18 @@ eo_tokenizer_database_fill(const char *filename) EINA_LIST_FOREACH(kls->implements, l, impl) { const char *class = impl->meth_name; + if (!strcmp(class, "Eo_Base::constructor")) + { + Eolian_Function foo_id = database_function_new(NULL, DFLT_CONSTRUCTOR); + database_class_function_add(kls->name, foo_id); + continue; + } + if (!strcmp(class, "Eo_Base::destructor")) + { + Eolian_Function foo_id = database_function_new(NULL, DFLT_DESTRUCTOR); + database_class_function_add(kls->name, foo_id); + continue; + } char *func = strstr(class, "::"); if (func) *func = '\0'; func += 2; diff --git a/src/lib/eolian/eo_lexer.rl b/src/lib/eolian/eo_lexer.rl index 82b22fae02..35f987bb97 100644 --- a/src/lib/eolian/eo_lexer.rl +++ b/src/lib/eolian/eo_lexer.rl @@ -254,33 +254,11 @@ _eo_tokenizer_event_get(Eo_Tokenizer *toknz, char *p) return sgn; } -static Eo_DfltCtor_Def* -_eo_tokenizer_dflt_ctor_get(Eo_Tokenizer *toknz, char *p) -{ - Eo_DfltCtor_Def *ctor = calloc(1, sizeof(Eo_DfltCtor_Def)); - if (ctor == NULL) ABORT(toknz, "calloc Eo_DfltCtor_Def failure"); - - ctor->name = _eo_tokenizer_token_get(toknz, p); - - return ctor; -} - -static Eo_DfltDtor_Def* -_eo_tokenizer_dflt_dtor_get(Eo_Tokenizer *toknz, char *p) -{ - Eo_DfltDtor_Def *dtor = calloc(1, sizeof(Eo_DfltDtor_Def)); - if (dtor == NULL) ABORT(toknz, "calloc Eo_DfltDtor_Def failure"); - - dtor->name = _eo_tokenizer_token_get(toknz, p); - - return dtor; -} - static Eo_Implement_Def* _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) { Eo_Implement_Def *impl = calloc(1, sizeof(Eo_Implement_Def)); - if (impl == NULL) ABORT(toknz, "calloc Eo_DfltDtor_Def failure"); + if (impl == NULL) ABORT(toknz, "calloc Eo_Implement_Def failure"); impl->meth_name = _eo_tokenizer_token_get(toknz, p); @@ -738,40 +716,12 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) toknz->tmp.event = NULL; } - action end_dflt_ctor_def { - if (toknz->tmp.kls->dflt_ctor != NULL) - ABORT(toknz, "A default constructor has already been defined"); - toknz->tmp.kls->dflt_ctor = _eo_tokenizer_dflt_ctor_get(toknz, fpc); - } - action end_legacy_prefix { if (toknz->tmp.kls->legacy_prefix != NULL) ABORT(toknz, "A legacy prefix has already been given"); toknz->tmp.kls->legacy_prefix = _eo_tokenizer_token_get(toknz, fpc); } - action end_dflt_dtor_def { - if (toknz->tmp.kls->dflt_dtor != NULL) - ABORT(toknz, "A default destructor has already been defined"); - toknz->tmp.kls->dflt_dtor = _eo_tokenizer_dflt_dtor_get(toknz, fpc); - } - - action end_dflt_ctor_comment { - if (toknz->tmp.kls->dflt_ctor == NULL) - ABORT(toknz, "No default constructor is defined for the comment"); - if (toknz->tmp.kls->dflt_ctor->comment != NULL) - ABORT(toknz, "default constructor %s has already a comment", toknz->tmp.kls->dflt_ctor->name); - toknz->tmp.kls->dflt_ctor->comment = _eo_tokenizer_token_get(toknz, fpc-2); - } - - action end_dflt_dtor_comment { - if (toknz->tmp.kls->dflt_dtor == NULL) - ABORT(toknz, "No default destructor is defined for the comment"); - if (toknz->tmp.kls->dflt_dtor->comment != NULL) - ABORT(toknz, "default destructor %s has already a comment", toknz->tmp.kls->dflt_dtor->name); - toknz->tmp.kls->dflt_dtor->comment = _eo_tokenizer_token_get(toknz, fpc-2); - } - legacy_prefix = 'legacy_prefix' ignore* colon ignore* ident %end_legacy_prefix end_statement ignore*; class_it = ident %end_str_item ignore*; @@ -855,12 +805,6 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) event_it = event %end_event_name ignore* end_statement event_comment? ignore*; events = 'events' ignore* begin_def ignore* event_it* end_def; - dflt_ctor_comment = ws* eo_comment %end_dflt_ctor_comment; - dflt_ctor = 'constructor' >save_fpc %end_dflt_ctor_def ignore* end_statement dflt_ctor_comment? ignore*; - - dflt_dtor_comment = ws* eo_comment %end_dflt_dtor_comment; - dflt_dtor = 'destructor' >save_fpc %end_dflt_dtor_def ignore* end_statement dflt_dtor_comment? ignore*; - constructors = 'constructors' ignore* begin_def; destructors = 'destructors' ignore* begin_def; properties = 'properties' ignore* begin_def; @@ -874,8 +818,6 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) inherits => end_inherits; implements => end_implements; events => end_events; - dflt_ctor; - dflt_dtor; constructors => begin_constructors; destructors => begin_destructors; properties => begin_properties; @@ -1168,18 +1110,6 @@ eo_tokenizer_database_fill(const char *filename) { database_class_legacy_prefix_set(kls->name, kls->legacy_prefix); } - if (kls->dflt_ctor) - { - Eolian_Function foo_id = database_function_new(kls->dflt_ctor->name, DFLT_CONSTRUCTOR); - database_class_function_add(kls->name, foo_id); - database_function_description_set(foo_id, EOLIAN_COMMENT, kls->dflt_ctor->comment); - } - if (kls->dflt_dtor) - { - Eolian_Function foo_id = database_function_new(kls->dflt_dtor->name, DFLT_DESTRUCTOR); - database_class_function_add(kls->name, foo_id); - database_function_description_set(foo_id, EOLIAN_COMMENT, kls->dflt_dtor->comment); - } EINA_LIST_FOREACH(kls->constructors, l, meth) { Eolian_Function foo_id = database_function_new(meth->name, CONSTRUCTOR); @@ -1263,6 +1193,18 @@ eo_tokenizer_database_fill(const char *filename) EINA_LIST_FOREACH(kls->implements, l, impl) { const char *class = impl->meth_name; + if (!strcmp(class, "Eo_Base::constructor")) + { + Eolian_Function foo_id = database_function_new(NULL, DFLT_CONSTRUCTOR); + database_class_function_add(kls->name, foo_id); + continue; + } + if (!strcmp(class, "Eo_Base::destructor")) + { + Eolian_Function foo_id = database_function_new(NULL, DFLT_DESTRUCTOR); + database_class_function_add(kls->name, foo_id); + continue; + } char *func = strstr(class, "::"); if (func) *func = '\0'; func += 2;