summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Zaoui <daniel.zaoui@samsung.com>2014-03-16 09:40:06 +0200
committerDaniel Zaoui <daniel.zaoui@samsung.com>2014-03-16 09:40:06 +0200
commitb467fa9cd69fbf309b390613e9140a59d7d22ca6 (patch)
treee8e6ca65a3f3b9a1ecc778a90c4eb6f054db6be6 /src
parent5994846a34ce9b87d0b8339fdcfa4563cfd9b9f8 (diff)
Eolian/Lexer: fix Windows compilation.
strndup is not supported.
Diffstat (limited to 'src')
-rw-r--r--src/lib/eolian/eo_lexer.c536
-rw-r--r--src/lib/eolian/eo_lexer.rl6
2 files changed, 275 insertions, 267 deletions
diff --git a/src/lib/eolian/eo_lexer.c b/src/lib/eolian/eo_lexer.c
index 8d9acb542c..3504eb9f51 100644
--- a/src/lib/eolian/eo_lexer.c
+++ b/src/lib/eolian/eo_lexer.c
@@ -268,6 +268,7 @@ _eo_tokenizer_return_get(Eo_Tokenizer *toknz, char *p)
268 s = strchr(toknz->saved.tok, '('); 268 s = strchr(toknz->saved.tok, '(');
269 if (s) 269 if (s)
270 { 270 {
271 char *ret_val;
271 char *end = strchr(s, ')'); 272 char *end = strchr(s, ')');
272 if (!end) 273 if (!end)
273 ABORT(toknz, "wrong syntax (missing ')'): %s", 274 ABORT(toknz, "wrong syntax (missing ')'): %s",
@@ -280,7 +281,10 @@ _eo_tokenizer_return_get(Eo_Tokenizer *toknz, char *p)
280 if (end < s) 281 if (end < s)
281 ABORT(toknz, "empty default return value: %s", 282 ABORT(toknz, "empty default return value: %s",
282 _eo_tokenizer_token_get(toknz, p)); 283 _eo_tokenizer_token_get(toknz, p));
283 ret->dflt_ret_val = strndup(s, end - s + 1); 284 ret_val = malloc(end - s + 2); /* string + '\0' */
285 memcpy(ret_val, s, end - s + 1);
286 ret_val[end - s + 1] = '\0';
287 ret->dflt_ret_val = ret_val;
284 memset(s, ' ', end - s + 1); 288 memset(s, ' ', end - s + 1);
285 } 289 }
286 *p = ';'; 290 *p = ';';
@@ -347,11 +351,11 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p)
347} 351}
348 352
349 353
350#line 423 "lib/eolian/eo_lexer.rl" 354#line 427 "lib/eolian/eo_lexer.rl"
351 355
352 356
353 357
354#line 355 "lib/eolian/eo_lexer.c" 358#line 359 "lib/eolian/eo_lexer.c"
355static const char _eo_tokenizer_actions[] = { 359static const char _eo_tokenizer_actions[] = {
356 0, 1, 0, 1, 2, 1, 6, 1, 360 0, 1, 0, 1, 2, 1, 6, 1,
357 10, 1, 15, 1, 16, 1, 17, 1, 361 10, 1, 15, 1, 16, 1, 17, 1,
@@ -1280,7 +1284,7 @@ static const int eo_tokenizer_en_tokenize_class = 353;
1280static const int eo_tokenizer_en_main = 302; 1284static const int eo_tokenizer_en_main = 302;
1281 1285
1282 1286
1283#line 1017 "lib/eolian/eo_lexer.rl" 1287#line 1021 "lib/eolian/eo_lexer.rl"
1284 1288
1285 1289
1286Eina_Bool 1290Eina_Bool
@@ -1304,7 +1308,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source)
1304 } 1308 }
1305 1309
1306 1310
1307#line 1308 "lib/eolian/eo_lexer.c" 1311#line 1312 "lib/eolian/eo_lexer.c"
1308 { 1312 {
1309 toknz->cs = eo_tokenizer_start; 1313 toknz->cs = eo_tokenizer_start;
1310 toknz->ts = 0; 1314 toknz->ts = 0;
@@ -1312,7 +1316,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source)
1312 toknz->act = 0; 1316 toknz->act = 0;
1313 } 1317 }
1314 1318
1315#line 1040 "lib/eolian/eo_lexer.rl" 1319#line 1044 "lib/eolian/eo_lexer.rl"
1316 1320
1317 while (!done) 1321 while (!done)
1318 { 1322 {
@@ -1339,7 +1343,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source)
1339 } 1343 }
1340 1344
1341 1345
1342#line 1343 "lib/eolian/eo_lexer.c" 1346#line 1347 "lib/eolian/eo_lexer.c"
1343 { 1347 {
1344 int _klen; 1348 int _klen;
1345 unsigned int _trans; 1349 unsigned int _trans;
@@ -1358,7 +1362,7 @@ _resume:
1358#line 1 "NONE" 1362#line 1 "NONE"
1359 { toknz->ts = ( toknz->p);} 1363 { toknz->ts = ( toknz->p);}
1360 break; 1364 break;
1361#line 1362 "lib/eolian/eo_lexer.c" 1365#line 1366 "lib/eolian/eo_lexer.c"
1362 } 1366 }
1363 } 1367 }
1364 1368
@@ -1425,28 +1429,28 @@ _eof_trans:
1425 switch ( *_acts++ ) 1429 switch ( *_acts++ )
1426 { 1430 {
1427 case 0: 1431 case 0:
1428#line 355 "lib/eolian/eo_lexer.rl" 1432#line 359 "lib/eolian/eo_lexer.rl"
1429 { 1433 {
1430 toknz->current_line += 1; 1434 toknz->current_line += 1;
1431 DBG("inc[%d] %d", toknz->cs, toknz->current_line); 1435 DBG("inc[%d] %d", toknz->cs, toknz->current_line);
1432 } 1436 }
1433 break; 1437 break;
1434 case 1: 1438 case 1:
1435#line 360 "lib/eolian/eo_lexer.rl" 1439#line 364 "lib/eolian/eo_lexer.rl"
1436 { 1440 {
1437 toknz->saved.line = toknz->current_line; 1441 toknz->saved.line = toknz->current_line;
1438 DBG("save line[%d] %d", toknz->cs, toknz->current_line); 1442 DBG("save line[%d] %d", toknz->cs, toknz->current_line);
1439 } 1443 }
1440 break; 1444 break;
1441 case 2: 1445 case 2:
1442#line 365 "lib/eolian/eo_lexer.rl" 1446#line 369 "lib/eolian/eo_lexer.rl"
1443 { 1447 {
1444 toknz->saved.tok = ( toknz->p); 1448 toknz->saved.tok = ( toknz->p);
1445 DBG("save token[%d] %p %c", toknz->cs, ( toknz->p), *( toknz->p)); 1449 DBG("save token[%d] %p %c", toknz->cs, ( toknz->p), *( toknz->p));
1446 } 1450 }
1447 break; 1451 break;
1448 case 3: 1452 case 3:
1449#line 441 "lib/eolian/eo_lexer.rl" 1453#line 445 "lib/eolian/eo_lexer.rl"
1450 { 1454 {
1451 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 1455 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
1452 if (toknz->tmp.accessor->ret != NULL) 1456 if (toknz->tmp.accessor->ret != NULL)
@@ -1455,7 +1459,7 @@ _eof_trans:
1455 } 1459 }
1456 break; 1460 break;
1457 case 4: 1461 case 4:
1458#line 448 "lib/eolian/eo_lexer.rl" 1462#line 452 "lib/eolian/eo_lexer.rl"
1459 { 1463 {
1460 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 1464 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
1461 if (!toknz->tmp.accessor->ret) ABORT(toknz, "No ret!!!"); 1465 if (!toknz->tmp.accessor->ret) ABORT(toknz, "No ret!!!");
@@ -1466,20 +1470,20 @@ _eof_trans:
1466 } 1470 }
1467 break; 1471 break;
1468 case 5: 1472 case 5:
1469#line 457 "lib/eolian/eo_lexer.rl" 1473#line 461 "lib/eolian/eo_lexer.rl"
1470 { 1474 {
1471 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 1475 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
1472 toknz->tmp.accessor->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); 1476 toknz->tmp.accessor->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p));
1473 } 1477 }
1474 break; 1478 break;
1475 case 6: 1479 case 6:
1476#line 471 "lib/eolian/eo_lexer.rl" 1480#line 475 "lib/eolian/eo_lexer.rl"
1477 { 1481 {
1478 toknz->tmp.accessor_param = _eo_tokenizer_accessor_param_get(toknz, ( toknz->p)); 1482 toknz->tmp.accessor_param = _eo_tokenizer_accessor_param_get(toknz, ( toknz->p));
1479 } 1483 }
1480 break; 1484 break;
1481 case 7: 1485 case 7:
1482#line 475 "lib/eolian/eo_lexer.rl" 1486#line 479 "lib/eolian/eo_lexer.rl"
1483 { 1487 {
1484 if (!toknz->tmp.accessor_param) 1488 if (!toknz->tmp.accessor_param)
1485 ABORT(toknz, "No accessor param!!!"); 1489 ABORT(toknz, "No accessor param!!!");
@@ -1490,7 +1494,7 @@ _eof_trans:
1490 } 1494 }
1491 break; 1495 break;
1492 case 8: 1496 case 8:
1493#line 504 "lib/eolian/eo_lexer.rl" 1497#line 508 "lib/eolian/eo_lexer.rl"
1494 { 1498 {
1495 const char *c = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); 1499 const char *c = _eo_tokenizer_token_get(toknz, ( toknz->p)-2);
1496 if (toknz->tmp.param == NULL) 1500 if (toknz->tmp.param == NULL)
@@ -1500,7 +1504,7 @@ _eof_trans:
1500 } 1504 }
1501 break; 1505 break;
1502 case 9: 1506 case 9:
1503#line 512 "lib/eolian/eo_lexer.rl" 1507#line 516 "lib/eolian/eo_lexer.rl"
1504 { 1508 {
1505 toknz->tmp.param = _eo_tokenizer_param_get(toknz, ( toknz->p)); 1509 toknz->tmp.param = _eo_tokenizer_param_get(toknz, ( toknz->p));
1506 if (toknz->tmp.params) 1510 if (toknz->tmp.params)
@@ -1511,7 +1515,7 @@ _eof_trans:
1511 } 1515 }
1512 break; 1516 break;
1513 case 10: 1517 case 10:
1514#line 612 "lib/eolian/eo_lexer.rl" 1518#line 616 "lib/eolian/eo_lexer.rl"
1515 { 1519 {
1516 if (toknz->tmp.prop != NULL) 1520 if (toknz->tmp.prop != NULL)
1517 ABORT(toknz, "there is a pending property definition %s", toknz->tmp.prop->name); 1521 ABORT(toknz, "there is a pending property definition %s", toknz->tmp.prop->name);
@@ -1519,7 +1523,7 @@ _eof_trans:
1519 } 1523 }
1520 break; 1524 break;
1521 case 11: 1525 case 11:
1522#line 652 "lib/eolian/eo_lexer.rl" 1526#line 656 "lib/eolian/eo_lexer.rl"
1523 { 1527 {
1524 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 1528 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
1525 if (toknz->tmp.meth->ret != NULL) 1529 if (toknz->tmp.meth->ret != NULL)
@@ -1528,7 +1532,7 @@ _eof_trans:
1528 } 1532 }
1529 break; 1533 break;
1530 case 12: 1534 case 12:
1531#line 659 "lib/eolian/eo_lexer.rl" 1535#line 663 "lib/eolian/eo_lexer.rl"
1532 { 1536 {
1533 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 1537 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
1534 if (toknz->tmp.meth->ret != NULL) ABORT(toknz, "No ret!!!"); 1538 if (toknz->tmp.meth->ret != NULL) ABORT(toknz, "No ret!!!");
@@ -1539,14 +1543,14 @@ _eof_trans:
1539 } 1543 }
1540 break; 1544 break;
1541 case 13: 1545 case 13:
1542#line 668 "lib/eolian/eo_lexer.rl" 1546#line 672 "lib/eolian/eo_lexer.rl"
1543 { 1547 {
1544 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 1548 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
1545 toknz->tmp.meth->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); 1549 toknz->tmp.meth->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p));
1546 } 1550 }
1547 break; 1551 break;
1548 case 14: 1552 case 14:
1549#line 673 "lib/eolian/eo_lexer.rl" 1553#line 677 "lib/eolian/eo_lexer.rl"
1550 { 1554 {
1551 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 1555 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
1552 toknz->tmp.meth->obj_const = EINA_TRUE; 1556 toknz->tmp.meth->obj_const = EINA_TRUE;
@@ -1554,7 +1558,7 @@ _eof_trans:
1554 } 1558 }
1555 break; 1559 break;
1556 case 15: 1560 case 15:
1557#line 735 "lib/eolian/eo_lexer.rl" 1561#line 739 "lib/eolian/eo_lexer.rl"
1558 { 1562 {
1559 if (toknz->tmp.meth != NULL) 1563 if (toknz->tmp.meth != NULL)
1560 ABORT(toknz, "there is a pending method definition %s", toknz->tmp.meth->name); 1564 ABORT(toknz, "there is a pending method definition %s", toknz->tmp.meth->name);
@@ -1562,14 +1566,14 @@ _eof_trans:
1562 } 1566 }
1563 break; 1567 break;
1564 case 16: 1568 case 16:
1565#line 767 "lib/eolian/eo_lexer.rl" 1569#line 771 "lib/eolian/eo_lexer.rl"
1566 { 1570 {
1567 const char *base = _eo_tokenizer_token_get(toknz, ( toknz->p)); 1571 const char *base = _eo_tokenizer_token_get(toknz, ( toknz->p));
1568 toknz->tmp.str_items = eina_list_append(toknz->tmp.str_items, base); 1572 toknz->tmp.str_items = eina_list_append(toknz->tmp.str_items, base);
1569 } 1573 }
1570 break; 1574 break;
1571 case 17: 1575 case 17:
1572#line 772 "lib/eolian/eo_lexer.rl" 1576#line 776 "lib/eolian/eo_lexer.rl"
1573 { 1577 {
1574 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1578 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1575 toknz->tmp.kls->inherits = toknz->tmp.str_items; 1579 toknz->tmp.kls->inherits = toknz->tmp.str_items;
@@ -1577,7 +1581,7 @@ _eof_trans:
1577 } 1581 }
1578 break; 1582 break;
1579 case 18: 1583 case 18:
1580#line 820 "lib/eolian/eo_lexer.rl" 1584#line 824 "lib/eolian/eo_lexer.rl"
1581 { 1585 {
1582 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1586 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1583 toknz->tmp.event = _eo_tokenizer_event_get(toknz, ( toknz->p)); 1587 toknz->tmp.event = _eo_tokenizer_event_get(toknz, ( toknz->p));
@@ -1585,7 +1589,7 @@ _eof_trans:
1585 } 1589 }
1586 break; 1590 break;
1587 case 19: 1591 case 19:
1588#line 826 "lib/eolian/eo_lexer.rl" 1592#line 830 "lib/eolian/eo_lexer.rl"
1589 { 1593 {
1590 if (!toknz->tmp.event) ABORT(toknz, "No event!!!"); 1594 if (!toknz->tmp.event) ABORT(toknz, "No event!!!");
1591 if (toknz->tmp.event->comment != NULL) 1595 if (toknz->tmp.event->comment != NULL)
@@ -1595,7 +1599,7 @@ _eof_trans:
1595 } 1599 }
1596 break; 1600 break;
1597 case 20: 1601 case 20:
1598#line 834 "lib/eolian/eo_lexer.rl" 1602#line 838 "lib/eolian/eo_lexer.rl"
1599 { 1603 {
1600 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1604 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1601 if (toknz->tmp.kls->legacy_prefix != NULL) 1605 if (toknz->tmp.kls->legacy_prefix != NULL)
@@ -1604,7 +1608,7 @@ _eof_trans:
1604 } 1608 }
1605 break; 1609 break;
1606 case 21: 1610 case 21:
1607#line 843 "lib/eolian/eo_lexer.rl" 1611#line 847 "lib/eolian/eo_lexer.rl"
1608 { 1612 {
1609 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1613 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1610 if (toknz->tmp.kls->eo_prefix != NULL) 1614 if (toknz->tmp.kls->eo_prefix != NULL)
@@ -1613,7 +1617,7 @@ _eof_trans:
1613 } 1617 }
1614 break; 1618 break;
1615 case 22: 1619 case 22:
1616#line 852 "lib/eolian/eo_lexer.rl" 1620#line 856 "lib/eolian/eo_lexer.rl"
1617 { 1621 {
1618 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1622 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1619 if (toknz->tmp.kls->data_type != NULL) 1623 if (toknz->tmp.kls->data_type != NULL)
@@ -1622,7 +1626,7 @@ _eof_trans:
1622 } 1626 }
1623 break; 1627 break;
1624 case 23: 1628 case 23:
1625#line 865 "lib/eolian/eo_lexer.rl" 1629#line 869 "lib/eolian/eo_lexer.rl"
1626 { 1630 {
1627 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 1631 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
1628 toknz->tmp.impl = _eo_tokenizer_implement_get(toknz, ( toknz->p)); 1632 toknz->tmp.impl = _eo_tokenizer_implement_get(toknz, ( toknz->p));
@@ -1630,7 +1634,7 @@ _eof_trans:
1630 } 1634 }
1631 break; 1635 break;
1632 case 24: 1636 case 24:
1633#line 871 "lib/eolian/eo_lexer.rl" 1637#line 875 "lib/eolian/eo_lexer.rl"
1634 { 1638 {
1635 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 1639 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
1636 if (toknz->tmp.impl->legacy) 1640 if (toknz->tmp.impl->legacy)
@@ -1639,7 +1643,7 @@ _eof_trans:
1639 } 1643 }
1640 break; 1644 break;
1641 case 25: 1645 case 25:
1642#line 878 "lib/eolian/eo_lexer.rl" 1646#line 882 "lib/eolian/eo_lexer.rl"
1643 { 1647 {
1644 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 1648 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
1645 if (!toknz->tmp.impl->legacy) 1649 if (!toknz->tmp.impl->legacy)
@@ -1648,7 +1652,7 @@ _eof_trans:
1648 } 1652 }
1649 break; 1653 break;
1650 case 26: 1654 case 26:
1651#line 885 "lib/eolian/eo_lexer.rl" 1655#line 889 "lib/eolian/eo_lexer.rl"
1652 { 1656 {
1653 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 1657 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
1654 toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); 1658 toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def));
@@ -1659,7 +1663,7 @@ _eof_trans:
1659 } 1663 }
1660 break; 1664 break;
1661 case 27: 1665 case 27:
1662#line 894 "lib/eolian/eo_lexer.rl" 1666#line 898 "lib/eolian/eo_lexer.rl"
1663 { 1667 {
1664 if (!toknz->tmp.impl_leg_param) 1668 if (!toknz->tmp.impl_leg_param)
1665 ABORT(toknz, "No implement legacy param!!!"); 1669 ABORT(toknz, "No implement legacy param!!!");
@@ -1667,7 +1671,7 @@ _eof_trans:
1667 } 1671 }
1668 break; 1672 break;
1669 case 28: 1673 case 28:
1670#line 900 "lib/eolian/eo_lexer.rl" 1674#line 904 "lib/eolian/eo_lexer.rl"
1671 { 1675 {
1672 if (!toknz->tmp.impl_leg_param) 1676 if (!toknz->tmp.impl_leg_param)
1673 ABORT(toknz, "No implement legacy param!!!"); 1677 ABORT(toknz, "No implement legacy param!!!");
@@ -1675,7 +1679,7 @@ _eof_trans:
1675 } 1679 }
1676 break; 1680 break;
1677 case 29: 1681 case 29:
1678#line 906 "lib/eolian/eo_lexer.rl" 1682#line 910 "lib/eolian/eo_lexer.rl"
1679 { 1683 {
1680 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 1684 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
1681 if (!toknz->tmp.impl->legacy) 1685 if (!toknz->tmp.impl->legacy)
@@ -1684,7 +1688,7 @@ _eof_trans:
1684 } 1688 }
1685 break; 1689 break;
1686 case 30: 1690 case 30:
1687#line 913 "lib/eolian/eo_lexer.rl" 1691#line 917 "lib/eolian/eo_lexer.rl"
1688 { 1692 {
1689 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 1693 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
1690 if (!toknz->tmp.impl->legacy) 1694 if (!toknz->tmp.impl->legacy)
@@ -1693,31 +1697,31 @@ _eof_trans:
1693 } 1697 }
1694 break; 1698 break;
1695 case 31: 1699 case 31:
1696#line 983 "lib/eolian/eo_lexer.rl" 1700#line 987 "lib/eolian/eo_lexer.rl"
1697 { 1701 {
1698 toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR; 1702 toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR;
1699 } 1703 }
1700 break; 1704 break;
1701 case 32: 1705 case 32:
1702#line 986 "lib/eolian/eo_lexer.rl" 1706#line 990 "lib/eolian/eo_lexer.rl"
1703 { 1707 {
1704 toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT; 1708 toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT;
1705 } 1709 }
1706 break; 1710 break;
1707 case 33: 1711 case 33:
1708#line 989 "lib/eolian/eo_lexer.rl" 1712#line 993 "lib/eolian/eo_lexer.rl"
1709 { 1713 {
1710 toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN; 1714 toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN;
1711 } 1715 }
1712 break; 1716 break;
1713 case 34: 1717 case 34:
1714#line 992 "lib/eolian/eo_lexer.rl" 1718#line 996 "lib/eolian/eo_lexer.rl"
1715 { 1719 {
1716 toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE; 1720 toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE;
1717 } 1721 }
1718 break; 1722 break;
1719 case 35: 1723 case 35:
1720#line 996 "lib/eolian/eo_lexer.rl" 1724#line 1000 "lib/eolian/eo_lexer.rl"
1721 { 1725 {
1722 if (toknz->tmp.kls != NULL) 1726 if (toknz->tmp.kls != NULL)
1723 ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name); 1727 ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name);
@@ -1730,7 +1734,7 @@ _eof_trans:
1730 { toknz->te = ( toknz->p)+1;} 1734 { toknz->te = ( toknz->p)+1;}
1731 break; 1735 break;
1732 case 39: 1736 case 39:
1733#line 433 "lib/eolian/eo_lexer.rl" 1737#line 437 "lib/eolian/eo_lexer.rl"
1734 { toknz->te = ( toknz->p)+1;{ 1738 { toknz->te = ( toknz->p)+1;{
1735 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 1739 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
1736 if (toknz->tmp.accessor->comment != NULL) 1740 if (toknz->tmp.accessor->comment != NULL)
@@ -1740,22 +1744,22 @@ _eof_trans:
1740 }} 1744 }}
1741 break; 1745 break;
1742 case 40: 1746 case 40:
1743#line 370 "lib/eolian/eo_lexer.rl" 1747#line 374 "lib/eolian/eo_lexer.rl"
1744 { toknz->te = ( toknz->p)+1;{ 1748 { toknz->te = ( toknz->p)+1;{
1745 DBG("comment[%d] line%03d:%03d", toknz->cs, 1749 DBG("comment[%d] line%03d:%03d", toknz->cs,
1746 toknz->saved.line, toknz->current_line); 1750 toknz->saved.line, toknz->current_line);
1747 }} 1751 }}
1748 break; 1752 break;
1749 case 41: 1753 case 41:
1750#line 496 "lib/eolian/eo_lexer.rl" 1754#line 500 "lib/eolian/eo_lexer.rl"
1751 { toknz->te = ( toknz->p)+1;} 1755 { toknz->te = ( toknz->p)+1;}
1752 break; 1756 break;
1753 case 42: 1757 case 42:
1754#line 497 "lib/eolian/eo_lexer.rl" 1758#line 501 "lib/eolian/eo_lexer.rl"
1755 { toknz->te = ( toknz->p)+1;} 1759 { toknz->te = ( toknz->p)+1;}
1756 break; 1760 break;
1757 case 43: 1761 case 43:
1758#line 462 "lib/eolian/eo_lexer.rl" 1762#line 466 "lib/eolian/eo_lexer.rl"
1759 { toknz->te = ( toknz->p)+1;{ 1763 { toknz->te = ( toknz->p)+1;{
1760 INF(" }"); 1764 INF(" }");
1761 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!"); 1765 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!");
@@ -1766,7 +1770,7 @@ _eof_trans:
1766 }} 1770 }}
1767 break; 1771 break;
1768 case 44: 1772 case 44:
1769#line 379 "lib/eolian/eo_lexer.rl" 1773#line 383 "lib/eolian/eo_lexer.rl"
1770 { toknz->te = ( toknz->p)+1;{ 1774 { toknz->te = ( toknz->p)+1;{
1771 DBG("error[%d]", toknz->cs); 1775 DBG("error[%d]", toknz->cs);
1772 char *s, *d; 1776 char *s, *d;
@@ -1785,15 +1789,15 @@ _eof_trans:
1785 }} 1789 }}
1786 break; 1790 break;
1787 case 45: 1791 case 45:
1788#line 492 "lib/eolian/eo_lexer.rl" 1792#line 496 "lib/eolian/eo_lexer.rl"
1789 { toknz->te = ( toknz->p);( toknz->p)--;} 1793 { toknz->te = ( toknz->p);( toknz->p)--;}
1790 break; 1794 break;
1791 case 46: 1795 case 46:
1792#line 495 "lib/eolian/eo_lexer.rl" 1796#line 499 "lib/eolian/eo_lexer.rl"
1793 { toknz->te = ( toknz->p);( toknz->p)--;} 1797 { toknz->te = ( toknz->p);( toknz->p)--;}
1794 break; 1798 break;
1795 case 47: 1799 case 47:
1796#line 462 "lib/eolian/eo_lexer.rl" 1800#line 466 "lib/eolian/eo_lexer.rl"
1797 { toknz->te = ( toknz->p);( toknz->p)--;{ 1801 { toknz->te = ( toknz->p);( toknz->p)--;{
1798 INF(" }"); 1802 INF(" }");
1799 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!"); 1803 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!");
@@ -1804,7 +1808,7 @@ _eof_trans:
1804 }} 1808 }}
1805 break; 1809 break;
1806 case 48: 1810 case 48:
1807#line 379 "lib/eolian/eo_lexer.rl" 1811#line 383 "lib/eolian/eo_lexer.rl"
1808 { toknz->te = ( toknz->p);( toknz->p)--;{ 1812 { toknz->te = ( toknz->p);( toknz->p)--;{
1809 DBG("error[%d]", toknz->cs); 1813 DBG("error[%d]", toknz->cs);
1810 char *s, *d; 1814 char *s, *d;
@@ -1823,11 +1827,11 @@ _eof_trans:
1823 }} 1827 }}
1824 break; 1828 break;
1825 case 49: 1829 case 49:
1826#line 495 "lib/eolian/eo_lexer.rl" 1830#line 499 "lib/eolian/eo_lexer.rl"
1827 {{( toknz->p) = (( toknz->te))-1;}} 1831 {{( toknz->p) = (( toknz->te))-1;}}
1828 break; 1832 break;
1829 case 50: 1833 case 50:
1830#line 379 "lib/eolian/eo_lexer.rl" 1834#line 383 "lib/eolian/eo_lexer.rl"
1831 {{( toknz->p) = (( toknz->te))-1;}{ 1835 {{( toknz->p) = (( toknz->te))-1;}{
1832 DBG("error[%d]", toknz->cs); 1836 DBG("error[%d]", toknz->cs);
1833 char *s, *d; 1837 char *s, *d;
@@ -1846,14 +1850,14 @@ _eof_trans:
1846 }} 1850 }}
1847 break; 1851 break;
1848 case 51: 1852 case 51:
1849#line 370 "lib/eolian/eo_lexer.rl" 1853#line 374 "lib/eolian/eo_lexer.rl"
1850 { toknz->te = ( toknz->p)+1;{ 1854 { toknz->te = ( toknz->p)+1;{
1851 DBG("comment[%d] line%03d:%03d", toknz->cs, 1855 DBG("comment[%d] line%03d:%03d", toknz->cs,
1852 toknz->saved.line, toknz->current_line); 1856 toknz->saved.line, toknz->current_line);
1853 }} 1857 }}
1854 break; 1858 break;
1855 case 52: 1859 case 52:
1856#line 521 "lib/eolian/eo_lexer.rl" 1860#line 525 "lib/eolian/eo_lexer.rl"
1857 { toknz->te = ( toknz->p)+1;{ 1861 { toknz->te = ( toknz->p)+1;{
1858 INF(" }"); 1862 INF(" }");
1859 toknz->tmp.param = NULL; 1863 toknz->tmp.param = NULL;
@@ -1867,7 +1871,7 @@ _eof_trans:
1867 }} 1871 }}
1868 break; 1872 break;
1869 case 53: 1873 case 53:
1870#line 379 "lib/eolian/eo_lexer.rl" 1874#line 383 "lib/eolian/eo_lexer.rl"
1871 { toknz->te = ( toknz->p)+1;{ 1875 { toknz->te = ( toknz->p)+1;{
1872 DBG("error[%d]", toknz->cs); 1876 DBG("error[%d]", toknz->cs);
1873 char *s, *d; 1877 char *s, *d;
@@ -1886,15 +1890,15 @@ _eof_trans:
1886 }} 1890 }}
1887 break; 1891 break;
1888 case 54: 1892 case 54:
1889#line 537 "lib/eolian/eo_lexer.rl" 1893#line 541 "lib/eolian/eo_lexer.rl"
1890 { toknz->te = ( toknz->p);( toknz->p)--;} 1894 { toknz->te = ( toknz->p);( toknz->p)--;}
1891 break; 1895 break;
1892 case 55: 1896 case 55:
1893#line 539 "lib/eolian/eo_lexer.rl" 1897#line 543 "lib/eolian/eo_lexer.rl"
1894 { toknz->te = ( toknz->p);( toknz->p)--;} 1898 { toknz->te = ( toknz->p);( toknz->p)--;}
1895 break; 1899 break;
1896 case 56: 1900 case 56:
1897#line 521 "lib/eolian/eo_lexer.rl" 1901#line 525 "lib/eolian/eo_lexer.rl"
1898 { toknz->te = ( toknz->p);( toknz->p)--;{ 1902 { toknz->te = ( toknz->p);( toknz->p)--;{
1899 INF(" }"); 1903 INF(" }");
1900 toknz->tmp.param = NULL; 1904 toknz->tmp.param = NULL;
@@ -1908,7 +1912,7 @@ _eof_trans:
1908 }} 1912 }}
1909 break; 1913 break;
1910 case 57: 1914 case 57:
1911#line 379 "lib/eolian/eo_lexer.rl" 1915#line 383 "lib/eolian/eo_lexer.rl"
1912 { toknz->te = ( toknz->p);( toknz->p)--;{ 1916 { toknz->te = ( toknz->p);( toknz->p)--;{
1913 DBG("error[%d]", toknz->cs); 1917 DBG("error[%d]", toknz->cs);
1914 char *s, *d; 1918 char *s, *d;
@@ -1927,11 +1931,11 @@ _eof_trans:
1927 }} 1931 }}
1928 break; 1932 break;
1929 case 58: 1933 case 58:
1930#line 539 "lib/eolian/eo_lexer.rl" 1934#line 543 "lib/eolian/eo_lexer.rl"
1931 {{( toknz->p) = (( toknz->te))-1;}} 1935 {{( toknz->p) = (( toknz->te))-1;}}
1932 break; 1936 break;
1933 case 59: 1937 case 59:
1934#line 379 "lib/eolian/eo_lexer.rl" 1938#line 383 "lib/eolian/eo_lexer.rl"
1935 {{( toknz->p) = (( toknz->te))-1;}{ 1939 {{( toknz->p) = (( toknz->te))-1;}{
1936 DBG("error[%d]", toknz->cs); 1940 DBG("error[%d]", toknz->cs);
1937 char *s, *d; 1941 char *s, *d;
@@ -1950,14 +1954,14 @@ _eof_trans:
1950 }} 1954 }}
1951 break; 1955 break;
1952 case 60: 1956 case 60:
1953#line 370 "lib/eolian/eo_lexer.rl" 1957#line 374 "lib/eolian/eo_lexer.rl"
1954 { toknz->te = ( toknz->p)+1;{ 1958 { toknz->te = ( toknz->p)+1;{
1955 DBG("comment[%d] line%03d:%03d", toknz->cs, 1959 DBG("comment[%d] line%03d:%03d", toknz->cs,
1956 toknz->saved.line, toknz->current_line); 1960 toknz->saved.line, toknz->current_line);
1957 }} 1961 }}
1958 break; 1962 break;
1959 case 61: 1963 case 61:
1960#line 546 "lib/eolian/eo_lexer.rl" 1964#line 550 "lib/eolian/eo_lexer.rl"
1961 { toknz->te = ( toknz->p)+1;{ 1965 { toknz->te = ( toknz->p)+1;{
1962 INF(" get {"); 1966 INF(" get {");
1963 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); 1967 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER);
@@ -1966,7 +1970,7 @@ _eof_trans:
1966 }} 1970 }}
1967 break; 1971 break;
1968 case 62: 1972 case 62:
1969#line 553 "lib/eolian/eo_lexer.rl" 1973#line 557 "lib/eolian/eo_lexer.rl"
1970 { toknz->te = ( toknz->p)+1;{ 1974 { toknz->te = ( toknz->p)+1;{
1971 INF(" set {"); 1975 INF(" set {");
1972 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); 1976 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER);
@@ -1975,7 +1979,7 @@ _eof_trans:
1975 }} 1979 }}
1976 break; 1980 break;
1977 case 63: 1981 case 63:
1978#line 560 "lib/eolian/eo_lexer.rl" 1982#line 564 "lib/eolian/eo_lexer.rl"
1979 { toknz->te = ( toknz->p)+1;{ 1983 { toknz->te = ( toknz->p)+1;{
1980 INF(" keys {"); 1984 INF(" keys {");
1981 toknz->current_nesting++; 1985 toknz->current_nesting++;
@@ -1984,7 +1988,7 @@ _eof_trans:
1984 }} 1988 }}
1985 break; 1989 break;
1986 case 64: 1990 case 64:
1987#line 567 "lib/eolian/eo_lexer.rl" 1991#line 571 "lib/eolian/eo_lexer.rl"
1988 { toknz->te = ( toknz->p)+1;{ 1992 { toknz->te = ( toknz->p)+1;{
1989 INF(" values {"); 1993 INF(" values {");
1990 toknz->current_nesting++; 1994 toknz->current_nesting++;
@@ -1993,7 +1997,7 @@ _eof_trans:
1993 }} 1997 }}
1994 break; 1998 break;
1995 case 65: 1999 case 65:
1996#line 574 "lib/eolian/eo_lexer.rl" 2000#line 578 "lib/eolian/eo_lexer.rl"
1997 { toknz->te = ( toknz->p)+1;{ 2001 { toknz->te = ( toknz->p)+1;{
1998 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 2002 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
1999 if (eina_list_count(toknz->tmp.prop->values) == 0) 2003 if (eina_list_count(toknz->tmp.prop->values) == 0)
@@ -2008,7 +2012,7 @@ _eof_trans:
2008 }} 2012 }}
2009 break; 2013 break;
2010 case 66: 2014 case 66:
2011#line 379 "lib/eolian/eo_lexer.rl" 2015#line 383 "lib/eolian/eo_lexer.rl"
2012 { toknz->te = ( toknz->p)+1;{ 2016 { toknz->te = ( toknz->p)+1;{
2013 DBG("error[%d]", toknz->cs); 2017 DBG("error[%d]", toknz->cs);
2014 char *s, *d; 2018 char *s, *d;
@@ -2027,11 +2031,11 @@ _eof_trans:
2027 }} 2031 }}
2028 break; 2032 break;
2029 case 67: 2033 case 67:
2030#line 593 "lib/eolian/eo_lexer.rl" 2034#line 597 "lib/eolian/eo_lexer.rl"
2031 { toknz->te = ( toknz->p);( toknz->p)--;} 2035 { toknz->te = ( toknz->p);( toknz->p)--;}
2032 break; 2036 break;
2033 case 68: 2037 case 68:
2034#line 574 "lib/eolian/eo_lexer.rl" 2038#line 578 "lib/eolian/eo_lexer.rl"
2035 { toknz->te = ( toknz->p);( toknz->p)--;{ 2039 { toknz->te = ( toknz->p);( toknz->p)--;{
2036 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 2040 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
2037 if (eina_list_count(toknz->tmp.prop->values) == 0) 2041 if (eina_list_count(toknz->tmp.prop->values) == 0)
@@ -2046,7 +2050,7 @@ _eof_trans:
2046 }} 2050 }}
2047 break; 2051 break;
2048 case 69: 2052 case 69:
2049#line 379 "lib/eolian/eo_lexer.rl" 2053#line 383 "lib/eolian/eo_lexer.rl"
2050 { toknz->te = ( toknz->p);( toknz->p)--;{ 2054 { toknz->te = ( toknz->p);( toknz->p)--;{
2051 DBG("error[%d]", toknz->cs); 2055 DBG("error[%d]", toknz->cs);
2052 char *s, *d; 2056 char *s, *d;
@@ -2065,7 +2069,7 @@ _eof_trans:
2065 }} 2069 }}
2066 break; 2070 break;
2067 case 70: 2071 case 70:
2068#line 379 "lib/eolian/eo_lexer.rl" 2072#line 383 "lib/eolian/eo_lexer.rl"
2069 {{( toknz->p) = (( toknz->te))-1;}{ 2073 {{( toknz->p) = (( toknz->te))-1;}{
2070 DBG("error[%d]", toknz->cs); 2074 DBG("error[%d]", toknz->cs);
2071 char *s, *d; 2075 char *s, *d;
@@ -2084,14 +2088,14 @@ _eof_trans:
2084 }} 2088 }}
2085 break; 2089 break;
2086 case 71: 2090 case 71:
2087#line 370 "lib/eolian/eo_lexer.rl" 2091#line 374 "lib/eolian/eo_lexer.rl"
2088 { toknz->te = ( toknz->p)+1;{ 2092 { toknz->te = ( toknz->p)+1;{
2089 DBG("comment[%d] line%03d:%03d", toknz->cs, 2093 DBG("comment[%d] line%03d:%03d", toknz->cs,
2090 toknz->saved.line, toknz->current_line); 2094 toknz->saved.line, toknz->current_line);
2091 }} 2095 }}
2092 break; 2096 break;
2093 case 72: 2097 case 72:
2094#line 605 "lib/eolian/eo_lexer.rl" 2098#line 609 "lib/eolian/eo_lexer.rl"
2095 { toknz->te = ( toknz->p)+1;{ 2099 { toknz->te = ( toknz->p)+1;{
2096 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 2100 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
2097 INF(" %s {", toknz->tmp.prop->name); 2101 INF(" %s {", toknz->tmp.prop->name);
@@ -2100,7 +2104,7 @@ _eof_trans:
2100 }} 2104 }}
2101 break; 2105 break;
2102 case 73: 2106 case 73:
2103#line 618 "lib/eolian/eo_lexer.rl" 2107#line 622 "lib/eolian/eo_lexer.rl"
2104 { toknz->te = ( toknz->p)+1;{ 2108 { toknz->te = ( toknz->p)+1;{
2105 INF(" }"); 2109 INF(" }");
2106 toknz->current_nesting--; 2110 toknz->current_nesting--;
@@ -2108,7 +2112,7 @@ _eof_trans:
2108 }} 2112 }}
2109 break; 2113 break;
2110 case 74: 2114 case 74:
2111#line 379 "lib/eolian/eo_lexer.rl" 2115#line 383 "lib/eolian/eo_lexer.rl"
2112 { toknz->te = ( toknz->p)+1;{ 2116 { toknz->te = ( toknz->p)+1;{
2113 DBG("error[%d]", toknz->cs); 2117 DBG("error[%d]", toknz->cs);
2114 char *s, *d; 2118 char *s, *d;
@@ -2127,11 +2131,11 @@ _eof_trans:
2127 }} 2131 }}
2128 break; 2132 break;
2129 case 75: 2133 case 75:
2130#line 627 "lib/eolian/eo_lexer.rl" 2134#line 631 "lib/eolian/eo_lexer.rl"
2131 { toknz->te = ( toknz->p);( toknz->p)--;} 2135 { toknz->te = ( toknz->p);( toknz->p)--;}
2132 break; 2136 break;
2133 case 76: 2137 case 76:
2134#line 618 "lib/eolian/eo_lexer.rl" 2138#line 622 "lib/eolian/eo_lexer.rl"
2135 { toknz->te = ( toknz->p);( toknz->p)--;{ 2139 { toknz->te = ( toknz->p);( toknz->p)--;{
2136 INF(" }"); 2140 INF(" }");
2137 toknz->current_nesting--; 2141 toknz->current_nesting--;
@@ -2139,7 +2143,7 @@ _eof_trans:
2139 }} 2143 }}
2140 break; 2144 break;
2141 case 77: 2145 case 77:
2142#line 379 "lib/eolian/eo_lexer.rl" 2146#line 383 "lib/eolian/eo_lexer.rl"
2143 { toknz->te = ( toknz->p);( toknz->p)--;{ 2147 { toknz->te = ( toknz->p);( toknz->p)--;{
2144 DBG("error[%d]", toknz->cs); 2148 DBG("error[%d]", toknz->cs);
2145 char *s, *d; 2149 char *s, *d;
@@ -2158,7 +2162,7 @@ _eof_trans:
2158 }} 2162 }}
2159 break; 2163 break;
2160 case 78: 2164 case 78:
2161#line 379 "lib/eolian/eo_lexer.rl" 2165#line 383 "lib/eolian/eo_lexer.rl"
2162 {{( toknz->p) = (( toknz->te))-1;}{ 2166 {{( toknz->p) = (( toknz->te))-1;}{
2163 DBG("error[%d]", toknz->cs); 2167 DBG("error[%d]", toknz->cs);
2164 char *s, *d; 2168 char *s, *d;
@@ -2177,7 +2181,7 @@ _eof_trans:
2177 }} 2181 }}
2178 break; 2182 break;
2179 case 79: 2183 case 79:
2180#line 636 "lib/eolian/eo_lexer.rl" 2184#line 640 "lib/eolian/eo_lexer.rl"
2181 { toknz->te = ( toknz->p)+1;{ 2185 { toknz->te = ( toknz->p)+1;{
2182 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2186 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2183 if (toknz->tmp.meth->comment != NULL) 2187 if (toknz->tmp.meth->comment != NULL)
@@ -2187,14 +2191,14 @@ _eof_trans:
2187 }} 2191 }}
2188 break; 2192 break;
2189 case 80: 2193 case 80:
2190#line 370 "lib/eolian/eo_lexer.rl" 2194#line 374 "lib/eolian/eo_lexer.rl"
2191 { toknz->te = ( toknz->p)+1;{ 2195 { toknz->te = ( toknz->p)+1;{
2192 DBG("comment[%d] line%03d:%03d", toknz->cs, 2196 DBG("comment[%d] line%03d:%03d", toknz->cs,
2193 toknz->saved.line, toknz->current_line); 2197 toknz->saved.line, toknz->current_line);
2194 }} 2198 }}
2195 break; 2199 break;
2196 case 81: 2200 case 81:
2197#line 644 "lib/eolian/eo_lexer.rl" 2201#line 648 "lib/eolian/eo_lexer.rl"
2198 { toknz->te = ( toknz->p)+1;{ 2202 { toknz->te = ( toknz->p)+1;{
2199 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2203 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2200 INF(" params {"); 2204 INF(" params {");
@@ -2204,15 +2208,15 @@ _eof_trans:
2204 }} 2208 }}
2205 break; 2209 break;
2206 case 82: 2210 case 82:
2207#line 720 "lib/eolian/eo_lexer.rl" 2211#line 724 "lib/eolian/eo_lexer.rl"
2208 { toknz->te = ( toknz->p)+1;} 2212 { toknz->te = ( toknz->p)+1;}
2209 break; 2213 break;
2210 case 83: 2214 case 83:
2211#line 721 "lib/eolian/eo_lexer.rl" 2215#line 725 "lib/eolian/eo_lexer.rl"
2212 { toknz->te = ( toknz->p)+1;} 2216 { toknz->te = ( toknz->p)+1;}
2213 break; 2217 break;
2214 case 84: 2218 case 84:
2215#line 679 "lib/eolian/eo_lexer.rl" 2219#line 683 "lib/eolian/eo_lexer.rl"
2216 { toknz->te = ( toknz->p)+1;{ 2220 { toknz->te = ( toknz->p)+1;{
2217 Eina_List **l = NULL; 2221 Eina_List **l = NULL;
2218 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2222 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
@@ -2240,7 +2244,7 @@ _eof_trans:
2240 }} 2244 }}
2241 break; 2245 break;
2242 case 85: 2246 case 85:
2243#line 379 "lib/eolian/eo_lexer.rl" 2247#line 383 "lib/eolian/eo_lexer.rl"
2244 { toknz->te = ( toknz->p)+1;{ 2248 { toknz->te = ( toknz->p)+1;{
2245 DBG("error[%d]", toknz->cs); 2249 DBG("error[%d]", toknz->cs);
2246 char *s, *d; 2250 char *s, *d;
@@ -2259,15 +2263,15 @@ _eof_trans:
2259 }} 2263 }}
2260 break; 2264 break;
2261 case 86: 2265 case 86:
2262#line 715 "lib/eolian/eo_lexer.rl" 2266#line 719 "lib/eolian/eo_lexer.rl"
2263 { toknz->te = ( toknz->p);( toknz->p)--;} 2267 { toknz->te = ( toknz->p);( toknz->p)--;}
2264 break; 2268 break;
2265 case 87: 2269 case 87:
2266#line 719 "lib/eolian/eo_lexer.rl" 2270#line 723 "lib/eolian/eo_lexer.rl"
2267 { toknz->te = ( toknz->p);( toknz->p)--;} 2271 { toknz->te = ( toknz->p);( toknz->p)--;}
2268 break; 2272 break;
2269 case 88: 2273 case 88:
2270#line 679 "lib/eolian/eo_lexer.rl" 2274#line 683 "lib/eolian/eo_lexer.rl"
2271 { toknz->te = ( toknz->p);( toknz->p)--;{ 2275 { toknz->te = ( toknz->p);( toknz->p)--;{
2272 Eina_List **l = NULL; 2276 Eina_List **l = NULL;
2273 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2277 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
@@ -2295,7 +2299,7 @@ _eof_trans:
2295 }} 2299 }}
2296 break; 2300 break;
2297 case 89: 2301 case 89:
2298#line 379 "lib/eolian/eo_lexer.rl" 2302#line 383 "lib/eolian/eo_lexer.rl"
2299 { toknz->te = ( toknz->p);( toknz->p)--;{ 2303 { toknz->te = ( toknz->p);( toknz->p)--;{
2300 DBG("error[%d]", toknz->cs); 2304 DBG("error[%d]", toknz->cs);
2301 char *s, *d; 2305 char *s, *d;
@@ -2314,11 +2318,11 @@ _eof_trans:
2314 }} 2318 }}
2315 break; 2319 break;
2316 case 90: 2320 case 90:
2317#line 719 "lib/eolian/eo_lexer.rl" 2321#line 723 "lib/eolian/eo_lexer.rl"
2318 {{( toknz->p) = (( toknz->te))-1;}} 2322 {{( toknz->p) = (( toknz->te))-1;}}
2319 break; 2323 break;
2320 case 91: 2324 case 91:
2321#line 379 "lib/eolian/eo_lexer.rl" 2325#line 383 "lib/eolian/eo_lexer.rl"
2322 {{( toknz->p) = (( toknz->te))-1;}{ 2326 {{( toknz->p) = (( toknz->te))-1;}{
2323 DBG("error[%d]", toknz->cs); 2327 DBG("error[%d]", toknz->cs);
2324 char *s, *d; 2328 char *s, *d;
@@ -2337,14 +2341,14 @@ _eof_trans:
2337 }} 2341 }}
2338 break; 2342 break;
2339 case 92: 2343 case 92:
2340#line 370 "lib/eolian/eo_lexer.rl" 2344#line 374 "lib/eolian/eo_lexer.rl"
2341 { toknz->te = ( toknz->p)+1;{ 2345 { toknz->te = ( toknz->p)+1;{
2342 DBG("comment[%d] line%03d:%03d", toknz->cs, 2346 DBG("comment[%d] line%03d:%03d", toknz->cs,
2343 toknz->saved.line, toknz->current_line); 2347 toknz->saved.line, toknz->current_line);
2344 }} 2348 }}
2345 break; 2349 break;
2346 case 93: 2350 case 93:
2347#line 728 "lib/eolian/eo_lexer.rl" 2351#line 732 "lib/eolian/eo_lexer.rl"
2348 { toknz->te = ( toknz->p)+1;{ 2352 { toknz->te = ( toknz->p)+1;{
2349 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2353 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2350 INF(" %s {", toknz->tmp.meth->name); 2354 INF(" %s {", toknz->tmp.meth->name);
@@ -2353,7 +2357,7 @@ _eof_trans:
2353 }} 2357 }}
2354 break; 2358 break;
2355 case 94: 2359 case 94:
2356#line 741 "lib/eolian/eo_lexer.rl" 2360#line 745 "lib/eolian/eo_lexer.rl"
2357 { toknz->te = ( toknz->p)+1;{ 2361 { toknz->te = ( toknz->p)+1;{
2358 INF(" }"); 2362 INF(" }");
2359 toknz->current_methods_type = METH_TYPE_LAST; 2363 toknz->current_methods_type = METH_TYPE_LAST;
@@ -2362,7 +2366,7 @@ _eof_trans:
2362 }} 2366 }}
2363 break; 2367 break;
2364 case 95: 2368 case 95:
2365#line 379 "lib/eolian/eo_lexer.rl" 2369#line 383 "lib/eolian/eo_lexer.rl"
2366 { toknz->te = ( toknz->p)+1;{ 2370 { toknz->te = ( toknz->p)+1;{
2367 DBG("error[%d]", toknz->cs); 2371 DBG("error[%d]", toknz->cs);
2368 char *s, *d; 2372 char *s, *d;
@@ -2381,11 +2385,11 @@ _eof_trans:
2381 }} 2385 }}
2382 break; 2386 break;
2383 case 96: 2387 case 96:
2384#line 751 "lib/eolian/eo_lexer.rl" 2388#line 755 "lib/eolian/eo_lexer.rl"
2385 { toknz->te = ( toknz->p);( toknz->p)--;} 2389 { toknz->te = ( toknz->p);( toknz->p)--;}
2386 break; 2390 break;
2387 case 97: 2391 case 97:
2388#line 741 "lib/eolian/eo_lexer.rl" 2392#line 745 "lib/eolian/eo_lexer.rl"
2389 { toknz->te = ( toknz->p);( toknz->p)--;{ 2393 { toknz->te = ( toknz->p);( toknz->p)--;{
2390 INF(" }"); 2394 INF(" }");
2391 toknz->current_methods_type = METH_TYPE_LAST; 2395 toknz->current_methods_type = METH_TYPE_LAST;
@@ -2394,7 +2398,7 @@ _eof_trans:
2394 }} 2398 }}
2395 break; 2399 break;
2396 case 98: 2400 case 98:
2397#line 379 "lib/eolian/eo_lexer.rl" 2401#line 383 "lib/eolian/eo_lexer.rl"
2398 { toknz->te = ( toknz->p);( toknz->p)--;{ 2402 { toknz->te = ( toknz->p);( toknz->p)--;{
2399 DBG("error[%d]", toknz->cs); 2403 DBG("error[%d]", toknz->cs);
2400 char *s, *d; 2404 char *s, *d;
@@ -2413,7 +2417,7 @@ _eof_trans:
2413 }} 2417 }}
2414 break; 2418 break;
2415 case 99: 2419 case 99:
2416#line 379 "lib/eolian/eo_lexer.rl" 2420#line 383 "lib/eolian/eo_lexer.rl"
2417 {{( toknz->p) = (( toknz->te))-1;}{ 2421 {{( toknz->p) = (( toknz->te))-1;}{
2418 DBG("error[%d]", toknz->cs); 2422 DBG("error[%d]", toknz->cs);
2419 char *s, *d; 2423 char *s, *d;
@@ -2432,7 +2436,7 @@ _eof_trans:
2432 }} 2436 }}
2433 break; 2437 break;
2434 case 100: 2438 case 100:
2435#line 760 "lib/eolian/eo_lexer.rl" 2439#line 764 "lib/eolian/eo_lexer.rl"
2436 { toknz->te = ( toknz->p)+1;{ 2440 { toknz->te = ( toknz->p)+1;{
2437 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 2441 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
2438 if (toknz->tmp.kls->comment != NULL) 2442 if (toknz->tmp.kls->comment != NULL)
@@ -2441,24 +2445,24 @@ _eof_trans:
2441 }} 2445 }}
2442 break; 2446 break;
2443 case 101: 2447 case 101:
2444#line 370 "lib/eolian/eo_lexer.rl" 2448#line 374 "lib/eolian/eo_lexer.rl"
2445 { toknz->te = ( toknz->p)+1;{ 2449 { toknz->te = ( toknz->p)+1;{
2446 DBG("comment[%d] line%03d:%03d", toknz->cs, 2450 DBG("comment[%d] line%03d:%03d", toknz->cs,
2447 toknz->saved.line, toknz->current_line); 2451 toknz->saved.line, toknz->current_line);
2448 }} 2452 }}
2449 break; 2453 break;
2450 case 102: 2454 case 102:
2451#line 778 "lib/eolian/eo_lexer.rl" 2455#line 782 "lib/eolian/eo_lexer.rl"
2452 { toknz->te = ( toknz->p)+1;{ 2456 { toknz->te = ( toknz->p)+1;{
2453 }} 2457 }}
2454 break; 2458 break;
2455 case 103: 2459 case 103:
2456#line 781 "lib/eolian/eo_lexer.rl" 2460#line 785 "lib/eolian/eo_lexer.rl"
2457 { toknz->te = ( toknz->p)+1;{ 2461 { toknz->te = ( toknz->p)+1;{
2458 }} 2462 }}
2459 break; 2463 break;
2460 case 104: 2464 case 104:
2461#line 784 "lib/eolian/eo_lexer.rl" 2465#line 788 "lib/eolian/eo_lexer.rl"
2462 { toknz->te = ( toknz->p)+1;{ 2466 { toknz->te = ( toknz->p)+1;{
2463 INF(" constructors {"); 2467 INF(" constructors {");
2464 toknz->current_methods_type = METH_CONSTRUCTOR; 2468 toknz->current_methods_type = METH_CONSTRUCTOR;
@@ -2467,7 +2471,7 @@ _eof_trans:
2467 }} 2471 }}
2468 break; 2472 break;
2469 case 105: 2473 case 105:
2470#line 791 "lib/eolian/eo_lexer.rl" 2474#line 795 "lib/eolian/eo_lexer.rl"
2471 { toknz->te = ( toknz->p)+1;{ 2475 { toknz->te = ( toknz->p)+1;{
2472 INF(" destructors {"); 2476 INF(" destructors {");
2473 toknz->current_methods_type = METH_DESTRUCTOR; 2477 toknz->current_methods_type = METH_DESTRUCTOR;
@@ -2476,7 +2480,7 @@ _eof_trans:
2476 }} 2480 }}
2477 break; 2481 break;
2478 case 106: 2482 case 106:
2479#line 798 "lib/eolian/eo_lexer.rl" 2483#line 802 "lib/eolian/eo_lexer.rl"
2480 { toknz->te = ( toknz->p)+1;{ 2484 { toknz->te = ( toknz->p)+1;{
2481 INF(" properties {"); 2485 INF(" properties {");
2482 toknz->current_nesting++; 2486 toknz->current_nesting++;
@@ -2484,7 +2488,7 @@ _eof_trans:
2484 }} 2488 }}
2485 break; 2489 break;
2486 case 107: 2490 case 107:
2487#line 804 "lib/eolian/eo_lexer.rl" 2491#line 808 "lib/eolian/eo_lexer.rl"
2488 { toknz->te = ( toknz->p)+1;{ 2492 { toknz->te = ( toknz->p)+1;{
2489 INF(" begin methods"); 2493 INF(" begin methods");
2490 toknz->current_methods_type = METH_REGULAR; 2494 toknz->current_methods_type = METH_REGULAR;
@@ -2493,7 +2497,7 @@ _eof_trans:
2493 }} 2497 }}
2494 break; 2498 break;
2495 case 108: 2499 case 108:
2496#line 811 "lib/eolian/eo_lexer.rl" 2500#line 815 "lib/eolian/eo_lexer.rl"
2497 { toknz->te = ( toknz->p)+1;{ 2501 { toknz->te = ( toknz->p)+1;{
2498 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 2502 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
2499 INF("end class: %s", toknz->tmp.kls->name); 2503 INF("end class: %s", toknz->tmp.kls->name);
@@ -2504,7 +2508,7 @@ _eof_trans:
2504 }} 2508 }}
2505 break; 2509 break;
2506 case 109: 2510 case 109:
2507#line 379 "lib/eolian/eo_lexer.rl" 2511#line 383 "lib/eolian/eo_lexer.rl"
2508 { toknz->te = ( toknz->p)+1;{ 2512 { toknz->te = ( toknz->p)+1;{
2509 DBG("error[%d]", toknz->cs); 2513 DBG("error[%d]", toknz->cs);
2510 char *s, *d; 2514 char *s, *d;
@@ -2523,33 +2527,33 @@ _eof_trans:
2523 }} 2527 }}
2524 break; 2528 break;
2525 case 110: 2529 case 110:
2526#line 958 "lib/eolian/eo_lexer.rl" 2530#line 962 "lib/eolian/eo_lexer.rl"
2527 { toknz->te = ( toknz->p);( toknz->p)--;} 2531 { toknz->te = ( toknz->p);( toknz->p)--;}
2528 break; 2532 break;
2529 case 111: 2533 case 111:
2530#line 961 "lib/eolian/eo_lexer.rl" 2534#line 965 "lib/eolian/eo_lexer.rl"
2531 { toknz->te = ( toknz->p);( toknz->p)--;} 2535 { toknz->te = ( toknz->p);( toknz->p)--;}
2532 break; 2536 break;
2533 case 112: 2537 case 112:
2534#line 962 "lib/eolian/eo_lexer.rl" 2538#line 966 "lib/eolian/eo_lexer.rl"
2535 { toknz->te = ( toknz->p);( toknz->p)--;} 2539 { toknz->te = ( toknz->p);( toknz->p)--;}
2536 break; 2540 break;
2537 case 113: 2541 case 113:
2538#line 963 "lib/eolian/eo_lexer.rl" 2542#line 967 "lib/eolian/eo_lexer.rl"
2539 { toknz->te = ( toknz->p);( toknz->p)--;} 2543 { toknz->te = ( toknz->p);( toknz->p)--;}
2540 break; 2544 break;
2541 case 114: 2545 case 114:
2542#line 778 "lib/eolian/eo_lexer.rl" 2546#line 782 "lib/eolian/eo_lexer.rl"
2543 { toknz->te = ( toknz->p);( toknz->p)--;{ 2547 { toknz->te = ( toknz->p);( toknz->p)--;{
2544 }} 2548 }}
2545 break; 2549 break;
2546 case 115: 2550 case 115:
2547#line 781 "lib/eolian/eo_lexer.rl" 2551#line 785 "lib/eolian/eo_lexer.rl"
2548 { toknz->te = ( toknz->p);( toknz->p)--;{ 2552 { toknz->te = ( toknz->p);( toknz->p)--;{
2549 }} 2553 }}
2550 break; 2554 break;
2551 case 116: 2555 case 116:
2552#line 811 "lib/eolian/eo_lexer.rl" 2556#line 815 "lib/eolian/eo_lexer.rl"
2553 { toknz->te = ( toknz->p);( toknz->p)--;{ 2557 { toknz->te = ( toknz->p);( toknz->p)--;{
2554 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 2558 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
2555 INF("end class: %s", toknz->tmp.kls->name); 2559 INF("end class: %s", toknz->tmp.kls->name);
@@ -2560,7 +2564,7 @@ _eof_trans:
2560 }} 2564 }}
2561 break; 2565 break;
2562 case 117: 2566 case 117:
2563#line 379 "lib/eolian/eo_lexer.rl" 2567#line 383 "lib/eolian/eo_lexer.rl"
2564 { toknz->te = ( toknz->p);( toknz->p)--;{ 2568 { toknz->te = ( toknz->p);( toknz->p)--;{
2565 DBG("error[%d]", toknz->cs); 2569 DBG("error[%d]", toknz->cs);
2566 char *s, *d; 2570 char *s, *d;
@@ -2579,7 +2583,7 @@ _eof_trans:
2579 }} 2583 }}
2580 break; 2584 break;
2581 case 118: 2585 case 118:
2582#line 379 "lib/eolian/eo_lexer.rl" 2586#line 383 "lib/eolian/eo_lexer.rl"
2583 {{( toknz->p) = (( toknz->te))-1;}{ 2587 {{( toknz->p) = (( toknz->te))-1;}{
2584 DBG("error[%d]", toknz->cs); 2588 DBG("error[%d]", toknz->cs);
2585 char *s, *d; 2589 char *s, *d;
@@ -2598,14 +2602,14 @@ _eof_trans:
2598 }} 2602 }}
2599 break; 2603 break;
2600 case 119: 2604 case 119:
2601#line 370 "lib/eolian/eo_lexer.rl" 2605#line 374 "lib/eolian/eo_lexer.rl"
2602 { toknz->te = ( toknz->p)+1;{ 2606 { toknz->te = ( toknz->p)+1;{
2603 DBG("comment[%d] line%03d:%03d", toknz->cs, 2607 DBG("comment[%d] line%03d:%03d", toknz->cs,
2604 toknz->saved.line, toknz->current_line); 2608 toknz->saved.line, toknz->current_line);
2605 }} 2609 }}
2606 break; 2610 break;
2607 case 120: 2611 case 120:
2608#line 976 "lib/eolian/eo_lexer.rl" 2612#line 980 "lib/eolian/eo_lexer.rl"
2609 { toknz->te = ( toknz->p)+1;{ 2613 { toknz->te = ( toknz->p)+1;{
2610 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 2614 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
2611 INF("begin class: %s", toknz->tmp.kls->name); 2615 INF("begin class: %s", toknz->tmp.kls->name);
@@ -2614,7 +2618,7 @@ _eof_trans:
2614 }} 2618 }}
2615 break; 2619 break;
2616 case 121: 2620 case 121:
2617#line 379 "lib/eolian/eo_lexer.rl" 2621#line 383 "lib/eolian/eo_lexer.rl"
2618 { toknz->te = ( toknz->p)+1;{ 2622 { toknz->te = ( toknz->p)+1;{
2619 DBG("error[%d]", toknz->cs); 2623 DBG("error[%d]", toknz->cs);
2620 char *s, *d; 2624 char *s, *d;
@@ -2633,11 +2637,11 @@ _eof_trans:
2633 }} 2637 }}
2634 break; 2638 break;
2635 case 122: 2639 case 122:
2636#line 1011 "lib/eolian/eo_lexer.rl" 2640#line 1015 "lib/eolian/eo_lexer.rl"
2637 { toknz->te = ( toknz->p);( toknz->p)--;} 2641 { toknz->te = ( toknz->p);( toknz->p)--;}
2638 break; 2642 break;
2639 case 123: 2643 case 123:
2640#line 379 "lib/eolian/eo_lexer.rl" 2644#line 383 "lib/eolian/eo_lexer.rl"
2641 { toknz->te = ( toknz->p);( toknz->p)--;{ 2645 { toknz->te = ( toknz->p);( toknz->p)--;{
2642 DBG("error[%d]", toknz->cs); 2646 DBG("error[%d]", toknz->cs);
2643 char *s, *d; 2647 char *s, *d;
@@ -2656,7 +2660,7 @@ _eof_trans:
2656 }} 2660 }}
2657 break; 2661 break;
2658 case 124: 2662 case 124:
2659#line 379 "lib/eolian/eo_lexer.rl" 2663#line 383 "lib/eolian/eo_lexer.rl"
2660 {{( toknz->p) = (( toknz->te))-1;}{ 2664 {{( toknz->p) = (( toknz->te))-1;}{
2661 DBG("error[%d]", toknz->cs); 2665 DBG("error[%d]", toknz->cs);
2662 char *s, *d; 2666 char *s, *d;
@@ -2674,7 +2678,7 @@ _eof_trans:
2674 {( toknz->p)++; goto _out; } /* necessary to stop scanners */ 2678 {( toknz->p)++; goto _out; } /* necessary to stop scanners */
2675 }} 2679 }}
2676 break; 2680 break;
2677#line 2678 "lib/eolian/eo_lexer.c" 2681#line 2682 "lib/eolian/eo_lexer.c"
2678 } 2682 }
2679 } 2683 }
2680 2684
@@ -2687,7 +2691,7 @@ _again:
2687#line 1 "NONE" 2691#line 1 "NONE"
2688 { toknz->ts = 0;} 2692 { toknz->ts = 0;}
2689 break; 2693 break;
2690#line 2691 "lib/eolian/eo_lexer.c" 2694#line 2695 "lib/eolian/eo_lexer.c"
2691 } 2695 }
2692 } 2696 }
2693 2697
@@ -2705,12 +2709,12 @@ _again:
2705 _out: {} 2709 _out: {}
2706 } 2710 }
2707 2711
2708#line 1066 "lib/eolian/eo_lexer.rl" 2712#line 1070 "lib/eolian/eo_lexer.rl"
2709 2713
2710 if ( toknz->cs == 2714 if ( toknz->cs ==
2711#line 2712 "lib/eolian/eo_lexer.c" 2715#line 2716 "lib/eolian/eo_lexer.c"
2712-1 2716-1
2713#line 1067 "lib/eolian/eo_lexer.rl" 2717#line 1071 "lib/eolian/eo_lexer.rl"
2714 ) 2718 )
2715 { 2719 {
2716 ERR("%s: wrong termination", source); 2720 ERR("%s: wrong termination", source);
@@ -2756,7 +2760,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns
2756 Eina_Bool ret = EINA_TRUE; 2760 Eina_Bool ret = EINA_TRUE;
2757 2761
2758 2762
2759#line 2760 "lib/eolian/eo_lexer.c" 2763#line 2764 "lib/eolian/eo_lexer.c"
2760 { 2764 {
2761 toknz->cs = eo_tokenizer_start; 2765 toknz->cs = eo_tokenizer_start;
2762 toknz->ts = 0; 2766 toknz->ts = 0;
@@ -2764,7 +2768,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns
2764 toknz->act = 0; 2768 toknz->act = 0;
2765 } 2769 }
2766 2770
2767#line 1112 "lib/eolian/eo_lexer.rl" 2771#line 1116 "lib/eolian/eo_lexer.rl"
2768 2772
2769 toknz->p = buffer; 2773 toknz->p = buffer;
2770 2774
@@ -2773,7 +2777,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns
2773 toknz->eof = toknz->pe; 2777 toknz->eof = toknz->pe;
2774 2778
2775 2779
2776#line 2777 "lib/eolian/eo_lexer.c" 2780#line 2781 "lib/eolian/eo_lexer.c"
2777 { 2781 {
2778 int _klen; 2782 int _klen;
2779 unsigned int _trans; 2783 unsigned int _trans;
@@ -2792,7 +2796,7 @@ _resume:
2792#line 1 "NONE" 2796#line 1 "NONE"
2793 { toknz->ts = ( toknz->p);} 2797 { toknz->ts = ( toknz->p);}
2794 break; 2798 break;
2795#line 2796 "lib/eolian/eo_lexer.c" 2799#line 2800 "lib/eolian/eo_lexer.c"
2796 } 2800 }
2797 } 2801 }
2798 2802
@@ -2859,28 +2863,28 @@ _eof_trans:
2859 switch ( *_acts++ ) 2863 switch ( *_acts++ )
2860 { 2864 {
2861 case 0: 2865 case 0:
2862#line 355 "lib/eolian/eo_lexer.rl" 2866#line 359 "lib/eolian/eo_lexer.rl"
2863 { 2867 {
2864 toknz->current_line += 1; 2868 toknz->current_line += 1;
2865 DBG("inc[%d] %d", toknz->cs, toknz->current_line); 2869 DBG("inc[%d] %d", toknz->cs, toknz->current_line);
2866 } 2870 }
2867 break; 2871 break;
2868 case 1: 2872 case 1:
2869#line 360 "lib/eolian/eo_lexer.rl" 2873#line 364 "lib/eolian/eo_lexer.rl"
2870 { 2874 {
2871 toknz->saved.line = toknz->current_line; 2875 toknz->saved.line = toknz->current_line;
2872 DBG("save line[%d] %d", toknz->cs, toknz->current_line); 2876 DBG("save line[%d] %d", toknz->cs, toknz->current_line);
2873 } 2877 }
2874 break; 2878 break;
2875 case 2: 2879 case 2:
2876#line 365 "lib/eolian/eo_lexer.rl" 2880#line 369 "lib/eolian/eo_lexer.rl"
2877 { 2881 {
2878 toknz->saved.tok = ( toknz->p); 2882 toknz->saved.tok = ( toknz->p);
2879 DBG("save token[%d] %p %c", toknz->cs, ( toknz->p), *( toknz->p)); 2883 DBG("save token[%d] %p %c", toknz->cs, ( toknz->p), *( toknz->p));
2880 } 2884 }
2881 break; 2885 break;
2882 case 3: 2886 case 3:
2883#line 441 "lib/eolian/eo_lexer.rl" 2887#line 445 "lib/eolian/eo_lexer.rl"
2884 { 2888 {
2885 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 2889 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
2886 if (toknz->tmp.accessor->ret != NULL) 2890 if (toknz->tmp.accessor->ret != NULL)
@@ -2889,7 +2893,7 @@ _eof_trans:
2889 } 2893 }
2890 break; 2894 break;
2891 case 4: 2895 case 4:
2892#line 448 "lib/eolian/eo_lexer.rl" 2896#line 452 "lib/eolian/eo_lexer.rl"
2893 { 2897 {
2894 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 2898 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
2895 if (!toknz->tmp.accessor->ret) ABORT(toknz, "No ret!!!"); 2899 if (!toknz->tmp.accessor->ret) ABORT(toknz, "No ret!!!");
@@ -2900,20 +2904,20 @@ _eof_trans:
2900 } 2904 }
2901 break; 2905 break;
2902 case 5: 2906 case 5:
2903#line 457 "lib/eolian/eo_lexer.rl" 2907#line 461 "lib/eolian/eo_lexer.rl"
2904 { 2908 {
2905 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 2909 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
2906 toknz->tmp.accessor->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); 2910 toknz->tmp.accessor->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p));
2907 } 2911 }
2908 break; 2912 break;
2909 case 6: 2913 case 6:
2910#line 471 "lib/eolian/eo_lexer.rl" 2914#line 475 "lib/eolian/eo_lexer.rl"
2911 { 2915 {
2912 toknz->tmp.accessor_param = _eo_tokenizer_accessor_param_get(toknz, ( toknz->p)); 2916 toknz->tmp.accessor_param = _eo_tokenizer_accessor_param_get(toknz, ( toknz->p));
2913 } 2917 }
2914 break; 2918 break;
2915 case 7: 2919 case 7:
2916#line 475 "lib/eolian/eo_lexer.rl" 2920#line 479 "lib/eolian/eo_lexer.rl"
2917 { 2921 {
2918 if (!toknz->tmp.accessor_param) 2922 if (!toknz->tmp.accessor_param)
2919 ABORT(toknz, "No accessor param!!!"); 2923 ABORT(toknz, "No accessor param!!!");
@@ -2924,7 +2928,7 @@ _eof_trans:
2924 } 2928 }
2925 break; 2929 break;
2926 case 8: 2930 case 8:
2927#line 504 "lib/eolian/eo_lexer.rl" 2931#line 508 "lib/eolian/eo_lexer.rl"
2928 { 2932 {
2929 const char *c = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); 2933 const char *c = _eo_tokenizer_token_get(toknz, ( toknz->p)-2);
2930 if (toknz->tmp.param == NULL) 2934 if (toknz->tmp.param == NULL)
@@ -2934,7 +2938,7 @@ _eof_trans:
2934 } 2938 }
2935 break; 2939 break;
2936 case 9: 2940 case 9:
2937#line 512 "lib/eolian/eo_lexer.rl" 2941#line 516 "lib/eolian/eo_lexer.rl"
2938 { 2942 {
2939 toknz->tmp.param = _eo_tokenizer_param_get(toknz, ( toknz->p)); 2943 toknz->tmp.param = _eo_tokenizer_param_get(toknz, ( toknz->p));
2940 if (toknz->tmp.params) 2944 if (toknz->tmp.params)
@@ -2945,7 +2949,7 @@ _eof_trans:
2945 } 2949 }
2946 break; 2950 break;
2947 case 10: 2951 case 10:
2948#line 612 "lib/eolian/eo_lexer.rl" 2952#line 616 "lib/eolian/eo_lexer.rl"
2949 { 2953 {
2950 if (toknz->tmp.prop != NULL) 2954 if (toknz->tmp.prop != NULL)
2951 ABORT(toknz, "there is a pending property definition %s", toknz->tmp.prop->name); 2955 ABORT(toknz, "there is a pending property definition %s", toknz->tmp.prop->name);
@@ -2953,7 +2957,7 @@ _eof_trans:
2953 } 2957 }
2954 break; 2958 break;
2955 case 11: 2959 case 11:
2956#line 652 "lib/eolian/eo_lexer.rl" 2960#line 656 "lib/eolian/eo_lexer.rl"
2957 { 2961 {
2958 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2962 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2959 if (toknz->tmp.meth->ret != NULL) 2963 if (toknz->tmp.meth->ret != NULL)
@@ -2962,7 +2966,7 @@ _eof_trans:
2962 } 2966 }
2963 break; 2967 break;
2964 case 12: 2968 case 12:
2965#line 659 "lib/eolian/eo_lexer.rl" 2969#line 663 "lib/eolian/eo_lexer.rl"
2966 { 2970 {
2967 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2971 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2968 if (toknz->tmp.meth->ret != NULL) ABORT(toknz, "No ret!!!"); 2972 if (toknz->tmp.meth->ret != NULL) ABORT(toknz, "No ret!!!");
@@ -2973,14 +2977,14 @@ _eof_trans:
2973 } 2977 }
2974 break; 2978 break;
2975 case 13: 2979 case 13:
2976#line 668 "lib/eolian/eo_lexer.rl" 2980#line 672 "lib/eolian/eo_lexer.rl"
2977 { 2981 {
2978 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2982 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2979 toknz->tmp.meth->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p)); 2983 toknz->tmp.meth->legacy = _eo_tokenizer_token_get(toknz, ( toknz->p));
2980 } 2984 }
2981 break; 2985 break;
2982 case 14: 2986 case 14:
2983#line 673 "lib/eolian/eo_lexer.rl" 2987#line 677 "lib/eolian/eo_lexer.rl"
2984 { 2988 {
2985 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 2989 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
2986 toknz->tmp.meth->obj_const = EINA_TRUE; 2990 toknz->tmp.meth->obj_const = EINA_TRUE;
@@ -2988,7 +2992,7 @@ _eof_trans:
2988 } 2992 }
2989 break; 2993 break;
2990 case 15: 2994 case 15:
2991#line 735 "lib/eolian/eo_lexer.rl" 2995#line 739 "lib/eolian/eo_lexer.rl"
2992 { 2996 {
2993 if (toknz->tmp.meth != NULL) 2997 if (toknz->tmp.meth != NULL)
2994 ABORT(toknz, "there is a pending method definition %s", toknz->tmp.meth->name); 2998 ABORT(toknz, "there is a pending method definition %s", toknz->tmp.meth->name);
@@ -2996,14 +3000,14 @@ _eof_trans:
2996 } 3000 }
2997 break; 3001 break;
2998 case 16: 3002 case 16:
2999#line 767 "lib/eolian/eo_lexer.rl" 3003#line 771 "lib/eolian/eo_lexer.rl"
3000 { 3004 {
3001 const char *base = _eo_tokenizer_token_get(toknz, ( toknz->p)); 3005 const char *base = _eo_tokenizer_token_get(toknz, ( toknz->p));
3002 toknz->tmp.str_items = eina_list_append(toknz->tmp.str_items, base); 3006 toknz->tmp.str_items = eina_list_append(toknz->tmp.str_items, base);
3003 } 3007 }
3004 break; 3008 break;
3005 case 17: 3009 case 17:
3006#line 772 "lib/eolian/eo_lexer.rl" 3010#line 776 "lib/eolian/eo_lexer.rl"
3007 { 3011 {
3008 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3012 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3009 toknz->tmp.kls->inherits = toknz->tmp.str_items; 3013 toknz->tmp.kls->inherits = toknz->tmp.str_items;
@@ -3011,7 +3015,7 @@ _eof_trans:
3011 } 3015 }
3012 break; 3016 break;
3013 case 18: 3017 case 18:
3014#line 820 "lib/eolian/eo_lexer.rl" 3018#line 824 "lib/eolian/eo_lexer.rl"
3015 { 3019 {
3016 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3020 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3017 toknz->tmp.event = _eo_tokenizer_event_get(toknz, ( toknz->p)); 3021 toknz->tmp.event = _eo_tokenizer_event_get(toknz, ( toknz->p));
@@ -3019,7 +3023,7 @@ _eof_trans:
3019 } 3023 }
3020 break; 3024 break;
3021 case 19: 3025 case 19:
3022#line 826 "lib/eolian/eo_lexer.rl" 3026#line 830 "lib/eolian/eo_lexer.rl"
3023 { 3027 {
3024 if (!toknz->tmp.event) ABORT(toknz, "No event!!!"); 3028 if (!toknz->tmp.event) ABORT(toknz, "No event!!!");
3025 if (toknz->tmp.event->comment != NULL) 3029 if (toknz->tmp.event->comment != NULL)
@@ -3029,7 +3033,7 @@ _eof_trans:
3029 } 3033 }
3030 break; 3034 break;
3031 case 20: 3035 case 20:
3032#line 834 "lib/eolian/eo_lexer.rl" 3036#line 838 "lib/eolian/eo_lexer.rl"
3033 { 3037 {
3034 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3038 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3035 if (toknz->tmp.kls->legacy_prefix != NULL) 3039 if (toknz->tmp.kls->legacy_prefix != NULL)
@@ -3038,7 +3042,7 @@ _eof_trans:
3038 } 3042 }
3039 break; 3043 break;
3040 case 21: 3044 case 21:
3041#line 843 "lib/eolian/eo_lexer.rl" 3045#line 847 "lib/eolian/eo_lexer.rl"
3042 { 3046 {
3043 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3047 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3044 if (toknz->tmp.kls->eo_prefix != NULL) 3048 if (toknz->tmp.kls->eo_prefix != NULL)
@@ -3047,7 +3051,7 @@ _eof_trans:
3047 } 3051 }
3048 break; 3052 break;
3049 case 22: 3053 case 22:
3050#line 852 "lib/eolian/eo_lexer.rl" 3054#line 856 "lib/eolian/eo_lexer.rl"
3051 { 3055 {
3052 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3056 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3053 if (toknz->tmp.kls->data_type != NULL) 3057 if (toknz->tmp.kls->data_type != NULL)
@@ -3056,7 +3060,7 @@ _eof_trans:
3056 } 3060 }
3057 break; 3061 break;
3058 case 23: 3062 case 23:
3059#line 865 "lib/eolian/eo_lexer.rl" 3063#line 869 "lib/eolian/eo_lexer.rl"
3060 { 3064 {
3061 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3065 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3062 toknz->tmp.impl = _eo_tokenizer_implement_get(toknz, ( toknz->p)); 3066 toknz->tmp.impl = _eo_tokenizer_implement_get(toknz, ( toknz->p));
@@ -3064,7 +3068,7 @@ _eof_trans:
3064 } 3068 }
3065 break; 3069 break;
3066 case 24: 3070 case 24:
3067#line 871 "lib/eolian/eo_lexer.rl" 3071#line 875 "lib/eolian/eo_lexer.rl"
3068 { 3072 {
3069 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 3073 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
3070 if (toknz->tmp.impl->legacy) 3074 if (toknz->tmp.impl->legacy)
@@ -3073,7 +3077,7 @@ _eof_trans:
3073 } 3077 }
3074 break; 3078 break;
3075 case 25: 3079 case 25:
3076#line 878 "lib/eolian/eo_lexer.rl" 3080#line 882 "lib/eolian/eo_lexer.rl"
3077 { 3081 {
3078 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 3082 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
3079 if (!toknz->tmp.impl->legacy) 3083 if (!toknz->tmp.impl->legacy)
@@ -3082,7 +3086,7 @@ _eof_trans:
3082 } 3086 }
3083 break; 3087 break;
3084 case 26: 3088 case 26:
3085#line 885 "lib/eolian/eo_lexer.rl" 3089#line 889 "lib/eolian/eo_lexer.rl"
3086 { 3090 {
3087 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 3091 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
3088 toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); 3092 toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def));
@@ -3093,7 +3097,7 @@ _eof_trans:
3093 } 3097 }
3094 break; 3098 break;
3095 case 27: 3099 case 27:
3096#line 894 "lib/eolian/eo_lexer.rl" 3100#line 898 "lib/eolian/eo_lexer.rl"
3097 { 3101 {
3098 if (!toknz->tmp.impl_leg_param) 3102 if (!toknz->tmp.impl_leg_param)
3099 ABORT(toknz, "No implement legacy param!!!"); 3103 ABORT(toknz, "No implement legacy param!!!");
@@ -3101,7 +3105,7 @@ _eof_trans:
3101 } 3105 }
3102 break; 3106 break;
3103 case 28: 3107 case 28:
3104#line 900 "lib/eolian/eo_lexer.rl" 3108#line 904 "lib/eolian/eo_lexer.rl"
3105 { 3109 {
3106 if (!toknz->tmp.impl_leg_param) 3110 if (!toknz->tmp.impl_leg_param)
3107 ABORT(toknz, "No implement legacy param!!!"); 3111 ABORT(toknz, "No implement legacy param!!!");
@@ -3109,7 +3113,7 @@ _eof_trans:
3109 } 3113 }
3110 break; 3114 break;
3111 case 29: 3115 case 29:
3112#line 906 "lib/eolian/eo_lexer.rl" 3116#line 910 "lib/eolian/eo_lexer.rl"
3113 { 3117 {
3114 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 3118 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
3115 if (!toknz->tmp.impl->legacy) 3119 if (!toknz->tmp.impl->legacy)
@@ -3118,7 +3122,7 @@ _eof_trans:
3118 } 3122 }
3119 break; 3123 break;
3120 case 30: 3124 case 30:
3121#line 913 "lib/eolian/eo_lexer.rl" 3125#line 917 "lib/eolian/eo_lexer.rl"
3122 { 3126 {
3123 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); 3127 if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!");
3124 if (!toknz->tmp.impl->legacy) 3128 if (!toknz->tmp.impl->legacy)
@@ -3127,31 +3131,31 @@ _eof_trans:
3127 } 3131 }
3128 break; 3132 break;
3129 case 31: 3133 case 31:
3130#line 983 "lib/eolian/eo_lexer.rl" 3134#line 987 "lib/eolian/eo_lexer.rl"
3131 { 3135 {
3132 toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR; 3136 toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR;
3133 } 3137 }
3134 break; 3138 break;
3135 case 32: 3139 case 32:
3136#line 986 "lib/eolian/eo_lexer.rl" 3140#line 990 "lib/eolian/eo_lexer.rl"
3137 { 3141 {
3138 toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT; 3142 toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT;
3139 } 3143 }
3140 break; 3144 break;
3141 case 33: 3145 case 33:
3142#line 989 "lib/eolian/eo_lexer.rl" 3146#line 993 "lib/eolian/eo_lexer.rl"
3143 { 3147 {
3144 toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN; 3148 toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN;
3145 } 3149 }
3146 break; 3150 break;
3147 case 34: 3151 case 34:
3148#line 992 "lib/eolian/eo_lexer.rl" 3152#line 996 "lib/eolian/eo_lexer.rl"
3149 { 3153 {
3150 toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE; 3154 toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE;
3151 } 3155 }
3152 break; 3156 break;
3153 case 35: 3157 case 35:
3154#line 996 "lib/eolian/eo_lexer.rl" 3158#line 1000 "lib/eolian/eo_lexer.rl"
3155 { 3159 {
3156 if (toknz->tmp.kls != NULL) 3160 if (toknz->tmp.kls != NULL)
3157 ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name); 3161 ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name);
@@ -3164,7 +3168,7 @@ _eof_trans:
3164 { toknz->te = ( toknz->p)+1;} 3168 { toknz->te = ( toknz->p)+1;}
3165 break; 3169 break;
3166 case 39: 3170 case 39:
3167#line 433 "lib/eolian/eo_lexer.rl" 3171#line 437 "lib/eolian/eo_lexer.rl"
3168 { toknz->te = ( toknz->p)+1;{ 3172 { toknz->te = ( toknz->p)+1;{
3169 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); 3173 if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!");
3170 if (toknz->tmp.accessor->comment != NULL) 3174 if (toknz->tmp.accessor->comment != NULL)
@@ -3174,22 +3178,22 @@ _eof_trans:
3174 }} 3178 }}
3175 break; 3179 break;
3176 case 40: 3180 case 40:
3177#line 370 "lib/eolian/eo_lexer.rl" 3181#line 374 "lib/eolian/eo_lexer.rl"
3178 { toknz->te = ( toknz->p)+1;{ 3182 { toknz->te = ( toknz->p)+1;{
3179 DBG("comment[%d] line%03d:%03d", toknz->cs, 3183 DBG("comment[%d] line%03d:%03d", toknz->cs,
3180 toknz->saved.line, toknz->current_line); 3184 toknz->saved.line, toknz->current_line);
3181 }} 3185 }}
3182 break; 3186 break;
3183 case 41: 3187 case 41:
3184#line 496 "lib/eolian/eo_lexer.rl" 3188#line 500 "lib/eolian/eo_lexer.rl"
3185 { toknz->te = ( toknz->p)+1;} 3189 { toknz->te = ( toknz->p)+1;}
3186 break; 3190 break;
3187 case 42: 3191 case 42:
3188#line 497 "lib/eolian/eo_lexer.rl" 3192#line 501 "lib/eolian/eo_lexer.rl"
3189 { toknz->te = ( toknz->p)+1;} 3193 { toknz->te = ( toknz->p)+1;}
3190 break; 3194 break;
3191 case 43: 3195 case 43:
3192#line 462 "lib/eolian/eo_lexer.rl" 3196#line 466 "lib/eolian/eo_lexer.rl"
3193 { toknz->te = ( toknz->p)+1;{ 3197 { toknz->te = ( toknz->p)+1;{
3194 INF(" }"); 3198 INF(" }");
3195 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!"); 3199 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!");
@@ -3200,7 +3204,7 @@ _eof_trans:
3200 }} 3204 }}
3201 break; 3205 break;
3202 case 44: 3206 case 44:
3203#line 379 "lib/eolian/eo_lexer.rl" 3207#line 383 "lib/eolian/eo_lexer.rl"
3204 { toknz->te = ( toknz->p)+1;{ 3208 { toknz->te = ( toknz->p)+1;{
3205 DBG("error[%d]", toknz->cs); 3209 DBG("error[%d]", toknz->cs);
3206 char *s, *d; 3210 char *s, *d;
@@ -3219,15 +3223,15 @@ _eof_trans:
3219 }} 3223 }}
3220 break; 3224 break;
3221 case 45: 3225 case 45:
3222#line 492 "lib/eolian/eo_lexer.rl" 3226#line 496 "lib/eolian/eo_lexer.rl"
3223 { toknz->te = ( toknz->p);( toknz->p)--;} 3227 { toknz->te = ( toknz->p);( toknz->p)--;}
3224 break; 3228 break;
3225 case 46: 3229 case 46:
3226#line 495 "lib/eolian/eo_lexer.rl" 3230#line 499 "lib/eolian/eo_lexer.rl"
3227 { toknz->te = ( toknz->p);( toknz->p)--;} 3231 { toknz->te = ( toknz->p);( toknz->p)--;}
3228 break; 3232 break;
3229 case 47: 3233 case 47:
3230#line 462 "lib/eolian/eo_lexer.rl" 3234#line 466 "lib/eolian/eo_lexer.rl"
3231 { toknz->te = ( toknz->p);( toknz->p)--;{ 3235 { toknz->te = ( toknz->p);( toknz->p)--;{
3232 INF(" }"); 3236 INF(" }");
3233 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!"); 3237 if (!toknz->tmp.prop) ABORT(toknz, "No prop!!!");
@@ -3238,7 +3242,7 @@ _eof_trans:
3238 }} 3242 }}
3239 break; 3243 break;
3240 case 48: 3244 case 48:
3241#line 379 "lib/eolian/eo_lexer.rl" 3245#line 383 "lib/eolian/eo_lexer.rl"
3242 { toknz->te = ( toknz->p);( toknz->p)--;{ 3246 { toknz->te = ( toknz->p);( toknz->p)--;{
3243 DBG("error[%d]", toknz->cs); 3247 DBG("error[%d]", toknz->cs);
3244 char *s, *d; 3248 char *s, *d;
@@ -3257,11 +3261,11 @@ _eof_trans:
3257 }} 3261 }}
3258 break; 3262 break;
3259 case 49: 3263 case 49:
3260#line 495 "lib/eolian/eo_lexer.rl" 3264#line 499 "lib/eolian/eo_lexer.rl"
3261 {{( toknz->p) = (( toknz->te))-1;}} 3265 {{( toknz->p) = (( toknz->te))-1;}}
3262 break; 3266 break;
3263 case 50: 3267 case 50:
3264#line 379 "lib/eolian/eo_lexer.rl" 3268#line 383 "lib/eolian/eo_lexer.rl"
3265 {{( toknz->p) = (( toknz->te))-1;}{ 3269 {{( toknz->p) = (( toknz->te))-1;}{
3266 DBG("error[%d]", toknz->cs); 3270 DBG("error[%d]", toknz->cs);
3267 char *s, *d; 3271 char *s, *d;
@@ -3280,14 +3284,14 @@ _eof_trans:
3280 }} 3284 }}
3281 break; 3285 break;
3282 case 51: 3286 case 51:
3283#line 370 "lib/eolian/eo_lexer.rl" 3287#line 374 "lib/eolian/eo_lexer.rl"
3284 { toknz->te = ( toknz->p)+1;{ 3288 { toknz->te = ( toknz->p)+1;{
3285 DBG("comment[%d] line%03d:%03d", toknz->cs, 3289 DBG("comment[%d] line%03d:%03d", toknz->cs,
3286 toknz->saved.line, toknz->current_line); 3290 toknz->saved.line, toknz->current_line);
3287 }} 3291 }}
3288 break; 3292 break;
3289 case 52: 3293 case 52:
3290#line 521 "lib/eolian/eo_lexer.rl" 3294#line 525 "lib/eolian/eo_lexer.rl"
3291 { toknz->te = ( toknz->p)+1;{ 3295 { toknz->te = ( toknz->p)+1;{
3292 INF(" }"); 3296 INF(" }");
3293 toknz->tmp.param = NULL; 3297 toknz->tmp.param = NULL;
@@ -3301,7 +3305,7 @@ _eof_trans:
3301 }} 3305 }}
3302 break; 3306 break;
3303 case 53: 3307 case 53:
3304#line 379 "lib/eolian/eo_lexer.rl" 3308#line 383 "lib/eolian/eo_lexer.rl"
3305 { toknz->te = ( toknz->p)+1;{ 3309 { toknz->te = ( toknz->p)+1;{
3306 DBG("error[%d]", toknz->cs); 3310 DBG("error[%d]", toknz->cs);
3307 char *s, *d; 3311 char *s, *d;
@@ -3320,15 +3324,15 @@ _eof_trans:
3320 }} 3324 }}
3321 break; 3325 break;
3322 case 54: 3326 case 54:
3323#line 537 "lib/eolian/eo_lexer.rl" 3327#line 541 "lib/eolian/eo_lexer.rl"
3324 { toknz->te = ( toknz->p);( toknz->p)--;} 3328 { toknz->te = ( toknz->p);( toknz->p)--;}
3325 break; 3329 break;
3326 case 55: 3330 case 55:
3327#line 539 "lib/eolian/eo_lexer.rl" 3331#line 543 "lib/eolian/eo_lexer.rl"
3328 { toknz->te = ( toknz->p);( toknz->p)--;} 3332 { toknz->te = ( toknz->p);( toknz->p)--;}
3329 break; 3333 break;
3330 case 56: 3334 case 56:
3331#line 521 "lib/eolian/eo_lexer.rl" 3335#line 525 "lib/eolian/eo_lexer.rl"
3332 { toknz->te = ( toknz->p);( toknz->p)--;{ 3336 { toknz->te = ( toknz->p);( toknz->p)--;{
3333 INF(" }"); 3337 INF(" }");
3334 toknz->tmp.param = NULL; 3338 toknz->tmp.param = NULL;
@@ -3342,7 +3346,7 @@ _eof_trans:
3342 }} 3346 }}
3343 break; 3347 break;
3344 case 57: 3348 case 57:
3345#line 379 "lib/eolian/eo_lexer.rl" 3349#line 383 "lib/eolian/eo_lexer.rl"
3346 { toknz->te = ( toknz->p);( toknz->p)--;{ 3350 { toknz->te = ( toknz->p);( toknz->p)--;{
3347 DBG("error[%d]", toknz->cs); 3351 DBG("error[%d]", toknz->cs);
3348 char *s, *d; 3352 char *s, *d;
@@ -3361,11 +3365,11 @@ _eof_trans:
3361 }} 3365 }}
3362 break; 3366 break;
3363 case 58: 3367 case 58:
3364#line 539 "lib/eolian/eo_lexer.rl" 3368#line 543 "lib/eolian/eo_lexer.rl"
3365 {{( toknz->p) = (( toknz->te))-1;}} 3369 {{( toknz->p) = (( toknz->te))-1;}}
3366 break; 3370 break;
3367 case 59: 3371 case 59:
3368#line 379 "lib/eolian/eo_lexer.rl" 3372#line 383 "lib/eolian/eo_lexer.rl"
3369 {{( toknz->p) = (( toknz->te))-1;}{ 3373 {{( toknz->p) = (( toknz->te))-1;}{
3370 DBG("error[%d]", toknz->cs); 3374 DBG("error[%d]", toknz->cs);
3371 char *s, *d; 3375 char *s, *d;
@@ -3384,14 +3388,14 @@ _eof_trans:
3384 }} 3388 }}
3385 break; 3389 break;
3386 case 60: 3390 case 60:
3387#line 370 "lib/eolian/eo_lexer.rl" 3391#line 374 "lib/eolian/eo_lexer.rl"
3388 { toknz->te = ( toknz->p)+1;{ 3392 { toknz->te = ( toknz->p)+1;{
3389 DBG("comment[%d] line%03d:%03d", toknz->cs, 3393 DBG("comment[%d] line%03d:%03d", toknz->cs,
3390 toknz->saved.line, toknz->current_line); 3394 toknz->saved.line, toknz->current_line);
3391 }} 3395 }}
3392 break; 3396 break;
3393 case 61: 3397 case 61:
3394#line 546 "lib/eolian/eo_lexer.rl" 3398#line 550 "lib/eolian/eo_lexer.rl"
3395 { toknz->te = ( toknz->p)+1;{ 3399 { toknz->te = ( toknz->p)+1;{
3396 INF(" get {"); 3400 INF(" get {");
3397 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); 3401 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER);
@@ -3400,7 +3404,7 @@ _eof_trans:
3400 }} 3404 }}
3401 break; 3405 break;
3402 case 62: 3406 case 62:
3403#line 553 "lib/eolian/eo_lexer.rl" 3407#line 557 "lib/eolian/eo_lexer.rl"
3404 { toknz->te = ( toknz->p)+1;{ 3408 { toknz->te = ( toknz->p)+1;{
3405 INF(" set {"); 3409 INF(" set {");
3406 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); 3410 toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER);
@@ -3409,7 +3413,7 @@ _eof_trans:
3409 }} 3413 }}
3410 break; 3414 break;
3411 case 63: 3415 case 63:
3412#line 560 "lib/eolian/eo_lexer.rl" 3416#line 564 "lib/eolian/eo_lexer.rl"
3413 { toknz->te = ( toknz->p)+1;{ 3417 { toknz->te = ( toknz->p)+1;{
3414 INF(" keys {"); 3418 INF(" keys {");
3415 toknz->current_nesting++; 3419 toknz->current_nesting++;
@@ -3418,7 +3422,7 @@ _eof_trans:
3418 }} 3422 }}
3419 break; 3423 break;
3420 case 64: 3424 case 64:
3421#line 567 "lib/eolian/eo_lexer.rl" 3425#line 571 "lib/eolian/eo_lexer.rl"
3422 { toknz->te = ( toknz->p)+1;{ 3426 { toknz->te = ( toknz->p)+1;{
3423 INF(" values {"); 3427 INF(" values {");
3424 toknz->current_nesting++; 3428 toknz->current_nesting++;
@@ -3427,7 +3431,7 @@ _eof_trans:
3427 }} 3431 }}
3428 break; 3432 break;
3429 case 65: 3433 case 65:
3430#line 574 "lib/eolian/eo_lexer.rl" 3434#line 578 "lib/eolian/eo_lexer.rl"
3431 { toknz->te = ( toknz->p)+1;{ 3435 { toknz->te = ( toknz->p)+1;{
3432 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 3436 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
3433 if (eina_list_count(toknz->tmp.prop->values) == 0) 3437 if (eina_list_count(toknz->tmp.prop->values) == 0)
@@ -3442,7 +3446,7 @@ _eof_trans:
3442 }} 3446 }}
3443 break; 3447 break;
3444 case 66: 3448 case 66:
3445#line 379 "lib/eolian/eo_lexer.rl" 3449#line 383 "lib/eolian/eo_lexer.rl"
3446 { toknz->te = ( toknz->p)+1;{ 3450 { toknz->te = ( toknz->p)+1;{
3447 DBG("error[%d]", toknz->cs); 3451 DBG("error[%d]", toknz->cs);
3448 char *s, *d; 3452 char *s, *d;
@@ -3461,11 +3465,11 @@ _eof_trans:
3461 }} 3465 }}
3462 break; 3466 break;
3463 case 67: 3467 case 67:
3464#line 593 "lib/eolian/eo_lexer.rl" 3468#line 597 "lib/eolian/eo_lexer.rl"
3465 { toknz->te = ( toknz->p);( toknz->p)--;} 3469 { toknz->te = ( toknz->p);( toknz->p)--;}
3466 break; 3470 break;
3467 case 68: 3471 case 68:
3468#line 574 "lib/eolian/eo_lexer.rl" 3472#line 578 "lib/eolian/eo_lexer.rl"
3469 { toknz->te = ( toknz->p);( toknz->p)--;{ 3473 { toknz->te = ( toknz->p);( toknz->p)--;{
3470 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 3474 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
3471 if (eina_list_count(toknz->tmp.prop->values) == 0) 3475 if (eina_list_count(toknz->tmp.prop->values) == 0)
@@ -3480,7 +3484,7 @@ _eof_trans:
3480 }} 3484 }}
3481 break; 3485 break;
3482 case 69: 3486 case 69:
3483#line 379 "lib/eolian/eo_lexer.rl" 3487#line 383 "lib/eolian/eo_lexer.rl"
3484 { toknz->te = ( toknz->p);( toknz->p)--;{ 3488 { toknz->te = ( toknz->p);( toknz->p)--;{
3485 DBG("error[%d]", toknz->cs); 3489 DBG("error[%d]", toknz->cs);
3486 char *s, *d; 3490 char *s, *d;
@@ -3499,7 +3503,7 @@ _eof_trans:
3499 }} 3503 }}
3500 break; 3504 break;
3501 case 70: 3505 case 70:
3502#line 379 "lib/eolian/eo_lexer.rl" 3506#line 383 "lib/eolian/eo_lexer.rl"
3503 {{( toknz->p) = (( toknz->te))-1;}{ 3507 {{( toknz->p) = (( toknz->te))-1;}{
3504 DBG("error[%d]", toknz->cs); 3508 DBG("error[%d]", toknz->cs);
3505 char *s, *d; 3509 char *s, *d;
@@ -3518,14 +3522,14 @@ _eof_trans:
3518 }} 3522 }}
3519 break; 3523 break;
3520 case 71: 3524 case 71:
3521#line 370 "lib/eolian/eo_lexer.rl" 3525#line 374 "lib/eolian/eo_lexer.rl"
3522 { toknz->te = ( toknz->p)+1;{ 3526 { toknz->te = ( toknz->p)+1;{
3523 DBG("comment[%d] line%03d:%03d", toknz->cs, 3527 DBG("comment[%d] line%03d:%03d", toknz->cs,
3524 toknz->saved.line, toknz->current_line); 3528 toknz->saved.line, toknz->current_line);
3525 }} 3529 }}
3526 break; 3530 break;
3527 case 72: 3531 case 72:
3528#line 605 "lib/eolian/eo_lexer.rl" 3532#line 609 "lib/eolian/eo_lexer.rl"
3529 { toknz->te = ( toknz->p)+1;{ 3533 { toknz->te = ( toknz->p)+1;{
3530 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); 3534 if (!toknz->tmp.prop) ABORT(toknz, "No property!!!");
3531 INF(" %s {", toknz->tmp.prop->name); 3535 INF(" %s {", toknz->tmp.prop->name);
@@ -3534,7 +3538,7 @@ _eof_trans:
3534 }} 3538 }}
3535 break; 3539 break;
3536 case 73: 3540 case 73:
3537#line 618 "lib/eolian/eo_lexer.rl" 3541#line 622 "lib/eolian/eo_lexer.rl"
3538 { toknz->te = ( toknz->p)+1;{ 3542 { toknz->te = ( toknz->p)+1;{
3539 INF(" }"); 3543 INF(" }");
3540 toknz->current_nesting--; 3544 toknz->current_nesting--;
@@ -3542,7 +3546,7 @@ _eof_trans:
3542 }} 3546 }}
3543 break; 3547 break;
3544 case 74: 3548 case 74:
3545#line 379 "lib/eolian/eo_lexer.rl" 3549#line 383 "lib/eolian/eo_lexer.rl"
3546 { toknz->te = ( toknz->p)+1;{ 3550 { toknz->te = ( toknz->p)+1;{
3547 DBG("error[%d]", toknz->cs); 3551 DBG("error[%d]", toknz->cs);
3548 char *s, *d; 3552 char *s, *d;
@@ -3561,11 +3565,11 @@ _eof_trans:
3561 }} 3565 }}
3562 break; 3566 break;
3563 case 75: 3567 case 75:
3564#line 627 "lib/eolian/eo_lexer.rl" 3568#line 631 "lib/eolian/eo_lexer.rl"
3565 { toknz->te = ( toknz->p);( toknz->p)--;} 3569 { toknz->te = ( toknz->p);( toknz->p)--;}
3566 break; 3570 break;
3567 case 76: 3571 case 76:
3568#line 618 "lib/eolian/eo_lexer.rl" 3572#line 622 "lib/eolian/eo_lexer.rl"
3569 { toknz->te = ( toknz->p);( toknz->p)--;{ 3573 { toknz->te = ( toknz->p);( toknz->p)--;{
3570 INF(" }"); 3574 INF(" }");
3571 toknz->current_nesting--; 3575 toknz->current_nesting--;
@@ -3573,7 +3577,7 @@ _eof_trans:
3573 }} 3577 }}
3574 break; 3578 break;
3575 case 77: 3579 case 77:
3576#line 379 "lib/eolian/eo_lexer.rl" 3580#line 383 "lib/eolian/eo_lexer.rl"
3577 { toknz->te = ( toknz->p);( toknz->p)--;{ 3581 { toknz->te = ( toknz->p);( toknz->p)--;{
3578 DBG("error[%d]", toknz->cs); 3582 DBG("error[%d]", toknz->cs);
3579 char *s, *d; 3583 char *s, *d;
@@ -3592,7 +3596,7 @@ _eof_trans:
3592 }} 3596 }}
3593 break; 3597 break;
3594 case 78: 3598 case 78:
3595#line 379 "lib/eolian/eo_lexer.rl" 3599#line 383 "lib/eolian/eo_lexer.rl"
3596 {{( toknz->p) = (( toknz->te))-1;}{ 3600 {{( toknz->p) = (( toknz->te))-1;}{
3597 DBG("error[%d]", toknz->cs); 3601 DBG("error[%d]", toknz->cs);
3598 char *s, *d; 3602 char *s, *d;
@@ -3611,7 +3615,7 @@ _eof_trans:
3611 }} 3615 }}
3612 break; 3616 break;
3613 case 79: 3617 case 79:
3614#line 636 "lib/eolian/eo_lexer.rl" 3618#line 640 "lib/eolian/eo_lexer.rl"
3615 { toknz->te = ( toknz->p)+1;{ 3619 { toknz->te = ( toknz->p)+1;{
3616 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 3620 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
3617 if (toknz->tmp.meth->comment != NULL) 3621 if (toknz->tmp.meth->comment != NULL)
@@ -3621,14 +3625,14 @@ _eof_trans:
3621 }} 3625 }}
3622 break; 3626 break;
3623 case 80: 3627 case 80:
3624#line 370 "lib/eolian/eo_lexer.rl" 3628#line 374 "lib/eolian/eo_lexer.rl"
3625 { toknz->te = ( toknz->p)+1;{ 3629 { toknz->te = ( toknz->p)+1;{
3626 DBG("comment[%d] line%03d:%03d", toknz->cs, 3630 DBG("comment[%d] line%03d:%03d", toknz->cs,
3627 toknz->saved.line, toknz->current_line); 3631 toknz->saved.line, toknz->current_line);
3628 }} 3632 }}
3629 break; 3633 break;
3630 case 81: 3634 case 81:
3631#line 644 "lib/eolian/eo_lexer.rl" 3635#line 648 "lib/eolian/eo_lexer.rl"
3632 { toknz->te = ( toknz->p)+1;{ 3636 { toknz->te = ( toknz->p)+1;{
3633 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 3637 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
3634 INF(" params {"); 3638 INF(" params {");
@@ -3638,15 +3642,15 @@ _eof_trans:
3638 }} 3642 }}
3639 break; 3643 break;
3640 case 82: 3644 case 82:
3641#line 720 "lib/eolian/eo_lexer.rl" 3645#line 724 "lib/eolian/eo_lexer.rl"
3642 { toknz->te = ( toknz->p)+1;} 3646 { toknz->te = ( toknz->p)+1;}
3643 break; 3647 break;
3644 case 83: 3648 case 83:
3645#line 721 "lib/eolian/eo_lexer.rl" 3649#line 725 "lib/eolian/eo_lexer.rl"
3646 { toknz->te = ( toknz->p)+1;} 3650 { toknz->te = ( toknz->p)+1;}
3647 break; 3651 break;
3648 case 84: 3652 case 84:
3649#line 679 "lib/eolian/eo_lexer.rl" 3653#line 683 "lib/eolian/eo_lexer.rl"
3650 { toknz->te = ( toknz->p)+1;{ 3654 { toknz->te = ( toknz->p)+1;{
3651 Eina_List **l = NULL; 3655 Eina_List **l = NULL;
3652 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 3656 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
@@ -3674,7 +3678,7 @@ _eof_trans:
3674 }} 3678 }}
3675 break; 3679 break;
3676 case 85: 3680 case 85:
3677#line 379 "lib/eolian/eo_lexer.rl" 3681#line 383 "lib/eolian/eo_lexer.rl"
3678 { toknz->te = ( toknz->p)+1;{ 3682 { toknz->te = ( toknz->p)+1;{
3679 DBG("error[%d]", toknz->cs); 3683 DBG("error[%d]", toknz->cs);
3680 char *s, *d; 3684 char *s, *d;
@@ -3693,15 +3697,15 @@ _eof_trans:
3693 }} 3697 }}
3694 break; 3698 break;
3695 case 86: 3699 case 86:
3696#line 715 "lib/eolian/eo_lexer.rl" 3700#line 719 "lib/eolian/eo_lexer.rl"
3697 { toknz->te = ( toknz->p);( toknz->p)--;} 3701 { toknz->te = ( toknz->p);( toknz->p)--;}
3698 break; 3702 break;
3699 case 87: 3703 case 87:
3700#line 719 "lib/eolian/eo_lexer.rl" 3704#line 723 "lib/eolian/eo_lexer.rl"
3701 { toknz->te = ( toknz->p);( toknz->p)--;} 3705 { toknz->te = ( toknz->p);( toknz->p)--;}
3702 break; 3706 break;
3703 case 88: 3707 case 88:
3704#line 679 "lib/eolian/eo_lexer.rl" 3708#line 683 "lib/eolian/eo_lexer.rl"
3705 { toknz->te = ( toknz->p);( toknz->p)--;{ 3709 { toknz->te = ( toknz->p);( toknz->p)--;{
3706 Eina_List **l = NULL; 3710 Eina_List **l = NULL;
3707 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 3711 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
@@ -3729,7 +3733,7 @@ _eof_trans:
3729 }} 3733 }}
3730 break; 3734 break;
3731 case 89: 3735 case 89:
3732#line 379 "lib/eolian/eo_lexer.rl" 3736#line 383 "lib/eolian/eo_lexer.rl"
3733 { toknz->te = ( toknz->p);( toknz->p)--;{ 3737 { toknz->te = ( toknz->p);( toknz->p)--;{
3734 DBG("error[%d]", toknz->cs); 3738 DBG("error[%d]", toknz->cs);
3735 char *s, *d; 3739 char *s, *d;
@@ -3748,11 +3752,11 @@ _eof_trans:
3748 }} 3752 }}
3749 break; 3753 break;
3750 case 90: 3754 case 90:
3751#line 719 "lib/eolian/eo_lexer.rl" 3755#line 723 "lib/eolian/eo_lexer.rl"
3752 {{( toknz->p) = (( toknz->te))-1;}} 3756 {{( toknz->p) = (( toknz->te))-1;}}
3753 break; 3757 break;
3754 case 91: 3758 case 91:
3755#line 379 "lib/eolian/eo_lexer.rl" 3759#line 383 "lib/eolian/eo_lexer.rl"
3756 {{( toknz->p) = (( toknz->te))-1;}{ 3760 {{( toknz->p) = (( toknz->te))-1;}{
3757 DBG("error[%d]", toknz->cs); 3761 DBG("error[%d]", toknz->cs);
3758 char *s, *d; 3762 char *s, *d;
@@ -3771,14 +3775,14 @@ _eof_trans:
3771 }} 3775 }}
3772 break; 3776 break;
3773 case 92: 3777 case 92:
3774#line 370 "lib/eolian/eo_lexer.rl" 3778#line 374 "lib/eolian/eo_lexer.rl"
3775 { toknz->te = ( toknz->p)+1;{ 3779 { toknz->te = ( toknz->p)+1;{
3776 DBG("comment[%d] line%03d:%03d", toknz->cs, 3780 DBG("comment[%d] line%03d:%03d", toknz->cs,
3777 toknz->saved.line, toknz->current_line); 3781 toknz->saved.line, toknz->current_line);
3778 }} 3782 }}
3779 break; 3783 break;
3780 case 93: 3784 case 93:
3781#line 728 "lib/eolian/eo_lexer.rl" 3785#line 732 "lib/eolian/eo_lexer.rl"
3782 { toknz->te = ( toknz->p)+1;{ 3786 { toknz->te = ( toknz->p)+1;{
3783 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); 3787 if (!toknz->tmp.meth) ABORT(toknz, "No method!!!");
3784 INF(" %s {", toknz->tmp.meth->name); 3788 INF(" %s {", toknz->tmp.meth->name);
@@ -3787,7 +3791,7 @@ _eof_trans:
3787 }} 3791 }}
3788 break; 3792 break;
3789 case 94: 3793 case 94:
3790#line 741 "lib/eolian/eo_lexer.rl" 3794#line 745 "lib/eolian/eo_lexer.rl"
3791 { toknz->te = ( toknz->p)+1;{ 3795 { toknz->te = ( toknz->p)+1;{
3792 INF(" }"); 3796 INF(" }");
3793 toknz->current_methods_type = METH_TYPE_LAST; 3797 toknz->current_methods_type = METH_TYPE_LAST;
@@ -3796,7 +3800,7 @@ _eof_trans:
3796 }} 3800 }}
3797 break; 3801 break;
3798 case 95: 3802 case 95:
3799#line 379 "lib/eolian/eo_lexer.rl" 3803#line 383 "lib/eolian/eo_lexer.rl"
3800 { toknz->te = ( toknz->p)+1;{ 3804 { toknz->te = ( toknz->p)+1;{
3801 DBG("error[%d]", toknz->cs); 3805 DBG("error[%d]", toknz->cs);
3802 char *s, *d; 3806 char *s, *d;
@@ -3815,11 +3819,11 @@ _eof_trans:
3815 }} 3819 }}
3816 break; 3820 break;
3817 case 96: 3821 case 96:
3818#line 751 "lib/eolian/eo_lexer.rl" 3822#line 755 "lib/eolian/eo_lexer.rl"
3819 { toknz->te = ( toknz->p);( toknz->p)--;} 3823 { toknz->te = ( toknz->p);( toknz->p)--;}
3820 break; 3824 break;
3821 case 97: 3825 case 97:
3822#line 741 "lib/eolian/eo_lexer.rl" 3826#line 745 "lib/eolian/eo_lexer.rl"
3823 { toknz->te = ( toknz->p);( toknz->p)--;{ 3827 { toknz->te = ( toknz->p);( toknz->p)--;{
3824 INF(" }"); 3828 INF(" }");
3825 toknz->current_methods_type = METH_TYPE_LAST; 3829 toknz->current_methods_type = METH_TYPE_LAST;
@@ -3828,7 +3832,7 @@ _eof_trans:
3828 }} 3832 }}
3829 break; 3833 break;
3830 case 98: 3834 case 98:
3831#line 379 "lib/eolian/eo_lexer.rl" 3835#line 383 "lib/eolian/eo_lexer.rl"
3832 { toknz->te = ( toknz->p);( toknz->p)--;{ 3836 { toknz->te = ( toknz->p);( toknz->p)--;{
3833 DBG("error[%d]", toknz->cs); 3837 DBG("error[%d]", toknz->cs);
3834 char *s, *d; 3838 char *s, *d;
@@ -3847,7 +3851,7 @@ _eof_trans:
3847 }} 3851 }}
3848 break; 3852 break;
3849 case 99: 3853 case 99:
3850#line 379 "lib/eolian/eo_lexer.rl" 3854#line 383 "lib/eolian/eo_lexer.rl"
3851 {{( toknz->p) = (( toknz->te))-1;}{ 3855 {{( toknz->p) = (( toknz->te))-1;}{
3852 DBG("error[%d]", toknz->cs); 3856 DBG("error[%d]", toknz->cs);
3853 char *s, *d; 3857 char *s, *d;
@@ -3866,7 +3870,7 @@ _eof_trans:
3866 }} 3870 }}
3867 break; 3871 break;
3868 case 100: 3872 case 100:
3869#line 760 "lib/eolian/eo_lexer.rl" 3873#line 764 "lib/eolian/eo_lexer.rl"
3870 { toknz->te = ( toknz->p)+1;{ 3874 { toknz->te = ( toknz->p)+1;{
3871 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3875 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3872 if (toknz->tmp.kls->comment != NULL) 3876 if (toknz->tmp.kls->comment != NULL)
@@ -3875,24 +3879,24 @@ _eof_trans:
3875 }} 3879 }}
3876 break; 3880 break;
3877 case 101: 3881 case 101:
3878#line 370 "lib/eolian/eo_lexer.rl" 3882#line 374 "lib/eolian/eo_lexer.rl"
3879 { toknz->te = ( toknz->p)+1;{ 3883 { toknz->te = ( toknz->p)+1;{
3880 DBG("comment[%d] line%03d:%03d", toknz->cs, 3884 DBG("comment[%d] line%03d:%03d", toknz->cs,
3881 toknz->saved.line, toknz->current_line); 3885 toknz->saved.line, toknz->current_line);
3882 }} 3886 }}
3883 break; 3887 break;
3884 case 102: 3888 case 102:
3885#line 778 "lib/eolian/eo_lexer.rl" 3889#line 782 "lib/eolian/eo_lexer.rl"
3886 { toknz->te = ( toknz->p)+1;{ 3890 { toknz->te = ( toknz->p)+1;{
3887 }} 3891 }}
3888 break; 3892 break;
3889 case 103: 3893 case 103:
3890#line 781 "lib/eolian/eo_lexer.rl" 3894#line 785 "lib/eolian/eo_lexer.rl"
3891 { toknz->te = ( toknz->p)+1;{ 3895 { toknz->te = ( toknz->p)+1;{
3892 }} 3896 }}
3893 break; 3897 break;
3894 case 104: 3898 case 104:
3895#line 784 "lib/eolian/eo_lexer.rl" 3899#line 788 "lib/eolian/eo_lexer.rl"
3896 { toknz->te = ( toknz->p)+1;{ 3900 { toknz->te = ( toknz->p)+1;{
3897 INF(" constructors {"); 3901 INF(" constructors {");
3898 toknz->current_methods_type = METH_CONSTRUCTOR; 3902 toknz->current_methods_type = METH_CONSTRUCTOR;
@@ -3901,7 +3905,7 @@ _eof_trans:
3901 }} 3905 }}
3902 break; 3906 break;
3903 case 105: 3907 case 105:
3904#line 791 "lib/eolian/eo_lexer.rl" 3908#line 795 "lib/eolian/eo_lexer.rl"
3905 { toknz->te = ( toknz->p)+1;{ 3909 { toknz->te = ( toknz->p)+1;{
3906 INF(" destructors {"); 3910 INF(" destructors {");
3907 toknz->current_methods_type = METH_DESTRUCTOR; 3911 toknz->current_methods_type = METH_DESTRUCTOR;
@@ -3910,7 +3914,7 @@ _eof_trans:
3910 }} 3914 }}
3911 break; 3915 break;
3912 case 106: 3916 case 106:
3913#line 798 "lib/eolian/eo_lexer.rl" 3917#line 802 "lib/eolian/eo_lexer.rl"
3914 { toknz->te = ( toknz->p)+1;{ 3918 { toknz->te = ( toknz->p)+1;{
3915 INF(" properties {"); 3919 INF(" properties {");
3916 toknz->current_nesting++; 3920 toknz->current_nesting++;
@@ -3918,7 +3922,7 @@ _eof_trans:
3918 }} 3922 }}
3919 break; 3923 break;
3920 case 107: 3924 case 107:
3921#line 804 "lib/eolian/eo_lexer.rl" 3925#line 808 "lib/eolian/eo_lexer.rl"
3922 { toknz->te = ( toknz->p)+1;{ 3926 { toknz->te = ( toknz->p)+1;{
3923 INF(" begin methods"); 3927 INF(" begin methods");
3924 toknz->current_methods_type = METH_REGULAR; 3928 toknz->current_methods_type = METH_REGULAR;
@@ -3927,7 +3931,7 @@ _eof_trans:
3927 }} 3931 }}
3928 break; 3932 break;
3929 case 108: 3933 case 108:
3930#line 811 "lib/eolian/eo_lexer.rl" 3934#line 815 "lib/eolian/eo_lexer.rl"
3931 { toknz->te = ( toknz->p)+1;{ 3935 { toknz->te = ( toknz->p)+1;{
3932 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3936 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3933 INF("end class: %s", toknz->tmp.kls->name); 3937 INF("end class: %s", toknz->tmp.kls->name);
@@ -3938,7 +3942,7 @@ _eof_trans:
3938 }} 3942 }}
3939 break; 3943 break;
3940 case 109: 3944 case 109:
3941#line 379 "lib/eolian/eo_lexer.rl" 3945#line 383 "lib/eolian/eo_lexer.rl"
3942 { toknz->te = ( toknz->p)+1;{ 3946 { toknz->te = ( toknz->p)+1;{
3943 DBG("error[%d]", toknz->cs); 3947 DBG("error[%d]", toknz->cs);
3944 char *s, *d; 3948 char *s, *d;
@@ -3957,33 +3961,33 @@ _eof_trans:
3957 }} 3961 }}
3958 break; 3962 break;
3959 case 110: 3963 case 110:
3960#line 958 "lib/eolian/eo_lexer.rl" 3964#line 962 "lib/eolian/eo_lexer.rl"
3961 { toknz->te = ( toknz->p);( toknz->p)--;} 3965 { toknz->te = ( toknz->p);( toknz->p)--;}
3962 break; 3966 break;
3963 case 111: 3967 case 111:
3964#line 961 "lib/eolian/eo_lexer.rl" 3968#line 965 "lib/eolian/eo_lexer.rl"
3965 { toknz->te = ( toknz->p);( toknz->p)--;} 3969 { toknz->te = ( toknz->p);( toknz->p)--;}
3966 break; 3970 break;
3967 case 112: 3971 case 112:
3968#line 962 "lib/eolian/eo_lexer.rl" 3972#line 966 "lib/eolian/eo_lexer.rl"
3969 { toknz->te = ( toknz->p);( toknz->p)--;} 3973 { toknz->te = ( toknz->p);( toknz->p)--;}
3970 break; 3974 break;
3971 case 113: 3975 case 113:
3972#line 963 "lib/eolian/eo_lexer.rl" 3976#line 967 "lib/eolian/eo_lexer.rl"
3973 { toknz->te = ( toknz->p);( toknz->p)--;} 3977 { toknz->te = ( toknz->p);( toknz->p)--;}
3974 break; 3978 break;
3975 case 114: 3979 case 114:
3976#line 778 "lib/eolian/eo_lexer.rl" 3980#line 782 "lib/eolian/eo_lexer.rl"
3977 { toknz->te = ( toknz->p);( toknz->p)--;{ 3981 { toknz->te = ( toknz->p);( toknz->p)--;{
3978 }} 3982 }}
3979 break; 3983 break;
3980 case 115: 3984 case 115:
3981#line 781 "lib/eolian/eo_lexer.rl" 3985#line 785 "lib/eolian/eo_lexer.rl"
3982 { toknz->te = ( toknz->p);( toknz->p)--;{ 3986 { toknz->te = ( toknz->p);( toknz->p)--;{
3983 }} 3987 }}
3984 break; 3988 break;
3985 case 116: 3989 case 116:
3986#line 811 "lib/eolian/eo_lexer.rl" 3990#line 815 "lib/eolian/eo_lexer.rl"
3987 { toknz->te = ( toknz->p);( toknz->p)--;{ 3991 { toknz->te = ( toknz->p);( toknz->p)--;{
3988 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 3992 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
3989 INF("end class: %s", toknz->tmp.kls->name); 3993 INF("end class: %s", toknz->tmp.kls->name);
@@ -3994,7 +3998,7 @@ _eof_trans:
3994 }} 3998 }}
3995 break; 3999 break;
3996 case 117: 4000 case 117:
3997#line 379 "lib/eolian/eo_lexer.rl" 4001#line 383 "lib/eolian/eo_lexer.rl"
3998 { toknz->te = ( toknz->p);( toknz->p)--;{ 4002 { toknz->te = ( toknz->p);( toknz->p)--;{
3999 DBG("error[%d]", toknz->cs); 4003 DBG("error[%d]", toknz->cs);
4000 char *s, *d; 4004 char *s, *d;
@@ -4013,7 +4017,7 @@ _eof_trans:
4013 }} 4017 }}
4014 break; 4018 break;
4015 case 118: 4019 case 118:
4016#line 379 "lib/eolian/eo_lexer.rl" 4020#line 383 "lib/eolian/eo_lexer.rl"
4017 {{( toknz->p) = (( toknz->te))-1;}{ 4021 {{( toknz->p) = (( toknz->te))-1;}{
4018 DBG("error[%d]", toknz->cs); 4022 DBG("error[%d]", toknz->cs);
4019 char *s, *d; 4023 char *s, *d;
@@ -4032,14 +4036,14 @@ _eof_trans:
4032 }} 4036 }}
4033 break; 4037 break;
4034 case 119: 4038 case 119:
4035#line 370 "lib/eolian/eo_lexer.rl" 4039#line 374 "lib/eolian/eo_lexer.rl"
4036 { toknz->te = ( toknz->p)+1;{ 4040 { toknz->te = ( toknz->p)+1;{
4037 DBG("comment[%d] line%03d:%03d", toknz->cs, 4041 DBG("comment[%d] line%03d:%03d", toknz->cs,
4038 toknz->saved.line, toknz->current_line); 4042 toknz->saved.line, toknz->current_line);
4039 }} 4043 }}
4040 break; 4044 break;
4041 case 120: 4045 case 120:
4042#line 976 "lib/eolian/eo_lexer.rl" 4046#line 980 "lib/eolian/eo_lexer.rl"
4043 { toknz->te = ( toknz->p)+1;{ 4047 { toknz->te = ( toknz->p)+1;{
4044 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); 4048 if (!toknz->tmp.kls) ABORT(toknz, "No class!!!");
4045 INF("begin class: %s", toknz->tmp.kls->name); 4049 INF("begin class: %s", toknz->tmp.kls->name);
@@ -4048,7 +4052,7 @@ _eof_trans:
4048 }} 4052 }}
4049 break; 4053 break;
4050 case 121: 4054 case 121:
4051#line 379 "lib/eolian/eo_lexer.rl" 4055#line 383 "lib/eolian/eo_lexer.rl"
4052 { toknz->te = ( toknz->p)+1;{ 4056 { toknz->te = ( toknz->p)+1;{
4053 DBG("error[%d]", toknz->cs); 4057 DBG("error[%d]", toknz->cs);
4054 char *s, *d; 4058 char *s, *d;
@@ -4067,11 +4071,11 @@ _eof_trans:
4067 }} 4071 }}
4068 break; 4072 break;
4069 case 122: 4073 case 122:
4070#line 1011 "lib/eolian/eo_lexer.rl" 4074#line 1015 "lib/eolian/eo_lexer.rl"
4071 { toknz->te = ( toknz->p);( toknz->p)--;} 4075 { toknz->te = ( toknz->p);( toknz->p)--;}
4072 break; 4076 break;
4073 case 123: 4077 case 123:
4074#line 379 "lib/eolian/eo_lexer.rl" 4078#line 383 "lib/eolian/eo_lexer.rl"
4075 { toknz->te = ( toknz->p);( toknz->p)--;{ 4079 { toknz->te = ( toknz->p);( toknz->p)--;{
4076 DBG("error[%d]", toknz->cs); 4080 DBG("error[%d]", toknz->cs);
4077 char *s, *d; 4081 char *s, *d;
@@ -4090,7 +4094,7 @@ _eof_trans:
4090 }} 4094 }}
4091 break; 4095 break;
4092 case 124: 4096 case 124:
4093#line 379 "lib/eolian/eo_lexer.rl" 4097#line 383 "lib/eolian/eo_lexer.rl"
4094 {{( toknz->p) = (( toknz->te))-1;}{ 4098 {{( toknz->p) = (( toknz->te))-1;}{
4095 DBG("error[%d]", toknz->cs); 4099 DBG("error[%d]", toknz->cs);
4096 char *s, *d; 4100 char *s, *d;
@@ -4108,7 +4112,7 @@ _eof_trans:
4108 {( toknz->p)++; goto _out; } /* necessary to stop scanners */ 4112 {( toknz->p)++; goto _out; } /* necessary to stop scanners */
4109 }} 4113 }}
4110 break; 4114 break;
4111#line 4112 "lib/eolian/eo_lexer.c" 4115#line 4116 "lib/eolian/eo_lexer.c"
4112 } 4116 }
4113 } 4117 }
4114 4118
@@ -4121,7 +4125,7 @@ _again:
4121#line 1 "NONE" 4125#line 1 "NONE"
4122 { toknz->ts = 0;} 4126 { toknz->ts = 0;}
4123 break; 4127 break;
4124#line 4125 "lib/eolian/eo_lexer.c" 4128#line 4129 "lib/eolian/eo_lexer.c"
4125 } 4129 }
4126 } 4130 }
4127 4131
@@ -4139,12 +4143,12 @@ _again:
4139 _out: {} 4143 _out: {}
4140 } 4144 }
4141 4145
4142#line 1120 "lib/eolian/eo_lexer.rl" 4146#line 1124 "lib/eolian/eo_lexer.rl"
4143 4147
4144 if ( toknz->cs == 4148 if ( toknz->cs ==
4145#line 4146 "lib/eolian/eo_lexer.c" 4149#line 4150 "lib/eolian/eo_lexer.c"
4146-1 4150-1
4147#line 1121 "lib/eolian/eo_lexer.rl" 4151#line 1125 "lib/eolian/eo_lexer.rl"
4148 ) 4152 )
4149 { 4153 {
4150 ERR("%s: wrong termination", source); 4154 ERR("%s: wrong termination", source);
diff --git a/src/lib/eolian/eo_lexer.rl b/src/lib/eolian/eo_lexer.rl
index 6ee853668b..e31e92a87a 100644
--- a/src/lib/eolian/eo_lexer.rl
+++ b/src/lib/eolian/eo_lexer.rl
@@ -266,6 +266,7 @@ _eo_tokenizer_return_get(Eo_Tokenizer *toknz, char *p)
266 s = strchr(toknz->saved.tok, '('); 266 s = strchr(toknz->saved.tok, '(');
267 if (s) 267 if (s)
268 { 268 {
269 char *ret_val;
269 char *end = strchr(s, ')'); 270 char *end = strchr(s, ')');
270 if (!end) 271 if (!end)
271 ABORT(toknz, "wrong syntax (missing ')'): %s", 272 ABORT(toknz, "wrong syntax (missing ')'): %s",
@@ -278,7 +279,10 @@ _eo_tokenizer_return_get(Eo_Tokenizer *toknz, char *p)
278 if (end < s) 279 if (end < s)
279 ABORT(toknz, "empty default return value: %s", 280 ABORT(toknz, "empty default return value: %s",
280 _eo_tokenizer_token_get(toknz, p)); 281 _eo_tokenizer_token_get(toknz, p));
281 ret->dflt_ret_val = strndup(s, end - s + 1); 282 ret_val = malloc(end - s + 2); /* string + '\0' */
283 memcpy(ret_val, s, end - s + 1);
284 ret_val[end - s + 1] = '\0';
285 ret->dflt_ret_val = ret_val;
282 memset(s, ' ', end - s + 1); 286 memset(s, ' ', end - s + 1);
283 } 287 }
284 *p = ';'; 288 *p = ';';