diff --git a/src/lib/eolian/eo_definitions.c b/src/lib/eolian/eo_definitions.c index 15d30d49b3..2072807b08 100644 --- a/src/lib/eolian/eo_definitions.c +++ b/src/lib/eolian/eo_definitions.c @@ -108,8 +108,6 @@ eo_definitions_impl_def_free(Eo_Implement_Def *impl) { if (impl->meth_name) eina_stringshare_del(impl->meth_name); - if (impl->legacy) - free(impl->legacy); free(impl); } diff --git a/src/lib/eolian/eo_definitions.h b/src/lib/eolian/eo_definitions.h index ec189375b5..c535aa7e04 100644 --- a/src/lib/eolian/eo_definitions.h +++ b/src/lib/eolian/eo_definitions.h @@ -107,18 +107,9 @@ typedef struct _eo_implement_legacy_param_def const char *comment; } Eo_Implement_Legacy_Param_Def; -typedef struct _eo_implement_legacy_def -{ - const char *function_name; - Eina_List *params; /* List of Eo_Implement_Legacy_Param_Def * */ - const char *ret_type; - const char *ret_value; -} Eo_Implement_Legacy_Def; - typedef struct _eo_implement_def { const char *meth_name; - Eo_Implement_Legacy_Def *legacy; } Eo_Implement_Def; /* CLASS */ diff --git a/src/lib/eolian/eo_lexer.c b/src/lib/eolian/eo_lexer.c index c9ec85aa32..5104ea976d 100644 --- a/src/lib/eolian/eo_lexer.c +++ b/src/lib/eolian/eo_lexer.c @@ -369,8 +369,8 @@ static const char _eo_tokenizer_actions[] = { 25, 1, 26, 1, 27, 1, 28, 1, 29, 1, 30, 1, 31, 1, 32, 1, 33, 1, 34, 1, 35, 1, 36, 1, - 37, 1, 38, 1, 39, 1, 40, 1, - 41, 1, 42, 1, 43, 1, 44, 1, + 37, 1, 40, 1, 41, 1, 42, 1, + 43, 1, 44, 1, 45, 1, 46, 1, 47, 1, 48, 1, 49, 1, 50, 1, 51, 1, 52, 1, 53, 1, 54, 1, 55, 1, 56, 1, 57, 1, 58, 1, @@ -379,8 +379,8 @@ static const char _eo_tokenizer_actions[] = { 67, 1, 68, 1, 69, 1, 70, 1, 71, 1, 72, 1, 73, 1, 74, 1, 75, 1, 76, 1, 77, 1, 78, 1, - 79, 1, 80, 1, 81, 1, 82, 1, - 83, 1, 84, 1, 85, 1, 88, 1, + 81, 1, 82, 1, 83, 1, 84, 1, + 85, 1, 86, 1, 87, 1, 88, 1, 89, 1, 90, 1, 91, 1, 92, 1, 93, 1, 94, 1, 95, 1, 96, 1, 97, 1, 98, 1, 99, 1, 100, 1, @@ -388,24 +388,20 @@ static const char _eo_tokenizer_actions[] = { 105, 1, 106, 1, 107, 1, 108, 1, 109, 1, 110, 1, 111, 1, 112, 1, 113, 1, 114, 1, 115, 1, 116, 1, - 117, 1, 118, 1, 119, 1, 120, 1, - 121, 1, 122, 1, 123, 1, 124, 1, - 125, 1, 126, 1, 127, 2, 0, 44, - 2, 0, 55, 2, 0, 64, 2, 0, - 75, 2, 0, 84, 2, 0, 96, 2, - 0, 105, 2, 0, 122, 2, 5, 50, - 2, 6, 45, 2, 7, 2, 2, 8, - 46, 2, 9, 59, 2, 11, 0, 2, - 11, 76, 2, 14, 91, 2, 15, 86, - 2, 16, 87, 2, 17, 0, 2, 17, - 97, 2, 19, 0, 2, 20, 0, 2, - 20, 123, 2, 21, 0, 2, 22, 0, - 2, 23, 0, 2, 23, 2, 2, 27, - 0, 2, 28, 0, 2, 28, 2, 2, - 29, 0, 2, 31, 0, 2, 32, 0, - 2, 32, 2, 2, 39, 0, 2, 39, - 123, 2, 42, 1, 2, 42, 2, 2, - 42, 4, 2, 42, 10, 2, 42, 13, + 117, 1, 118, 1, 119, 1, 120, 2, + 0, 37, 2, 0, 48, 2, 0, 57, + 2, 0, 68, 2, 0, 77, 2, 0, + 89, 2, 0, 98, 2, 0, 115, 2, + 5, 43, 2, 6, 38, 2, 7, 2, + 2, 8, 39, 2, 9, 52, 2, 11, + 0, 2, 11, 69, 2, 14, 84, 2, + 15, 79, 2, 16, 80, 2, 17, 0, + 2, 17, 90, 2, 19, 0, 2, 20, + 0, 2, 20, 116, 2, 21, 0, 2, + 22, 0, 2, 23, 0, 2, 23, 2, + 2, 27, 0, 2, 32, 0, 2, 32, + 116, 2, 35, 1, 2, 35, 2, 2, + 35, 4, 2, 35, 10, 2, 35, 13, 3, 3, 12, 2, 3, 3, 18, 2 }; @@ -443,25 +439,19 @@ static const short _eo_tokenizer_key_offsets[] = { 1328, 1336, 1352, 1356, 1368, 1369, 1370, 1380, 1382, 1385, 1393, 1401, 1409, 1421, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, 1437, - 1445, 1458, 1463, 1467, 1468, 1469, 1470, 1471, - 1472, 1484, 1489, 1493, 1502, 1506, 1507, 1508, - 1509, 1510, 1511, 1515, 1524, 1531, 1542, 1546, - 1560, 1570, 1582, 1587, 1593, 1598, 1599, 1600, - 1601, 1602, 1603, 1606, 1613, 1621, 1622, 1626, - 1634, 1638, 1643, 1644, 1645, 1655, 1657, 1660, - 1670, 1682, 1694, 1695, 1696, 1697, 1698, 1699, - 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1710, - 1717, 1725, 1726, 1727, 1728, 1729, 1730, 1734, - 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, - 1746, 1754, 1757, 1759, 1760, 1761, 1762, 1763, - 1774, 1777, 1779, 1790, 1802, 1814, 1818, 1818, - 1819, 1828, 1831, 1833, 1846, 1850, 1850, 1851, - 1860, 1863, 1865, 1866, 1867, 1868, 1869, 1870, - 1882, 1885, 1887, 1898, 1911, 1912, 1921, 1924, - 1926, 1927, 1928, 1929, 1930, 1934, 1934, 1935, - 1947, 1950, 1952, 1963, 1976, 1977, 1989, 1992, - 1994, 1995, 1996, 1999, 2001, 2004, 2005, 2006, - 2007, 2008, 2011, 2012, 2013 + 1445, 1457, 1461, 1462, 1463, 1464, 1465, 1466, + 1467, 1468, 1469, 1470, 1471, 1472, 1473, 1477, + 1484, 1492, 1493, 1494, 1495, 1496, 1497, 1501, + 1502, 1503, 1504, 1505, 1506, 1507, 1508, 1509, + 1513, 1521, 1524, 1526, 1527, 1528, 1529, 1530, + 1541, 1544, 1546, 1557, 1569, 1581, 1585, 1585, + 1586, 1595, 1598, 1600, 1613, 1617, 1617, 1618, + 1627, 1630, 1632, 1633, 1634, 1635, 1636, 1637, + 1649, 1652, 1654, 1665, 1678, 1679, 1688, 1691, + 1693, 1694, 1695, 1696, 1697, 1701, 1701, 1702, + 1714, 1717, 1719, 1730, 1743, 1744, 1756, 1759, + 1761, 1762, 1763, 1766, 1768, 1771, 1772, 1773, + 1774, 1775, 1778, 1779, 1780 }; static const char _eo_tokenizer_trans_keys[] = { @@ -646,77 +636,48 @@ static const char _eo_tokenizer_trans_keys[] = { 32, 112, 108, 101, 109, 101, 110, 116, 115, 10, 123, 0, 32, 10, 125, 0, 32, 65, 90, 97, 122, 10, 58, 59, - 95, 123, 0, 32, 48, 57, 65, 90, - 97, 122, 10, 59, 123, 0, 32, 10, - 108, 0, 32, 101, 103, 97, 99, 121, - 9, 10, 13, 32, 59, 123, 0, 31, - 65, 90, 97, 122, 10, 59, 123, 0, - 32, 10, 125, 0, 32, 10, 59, 125, - 0, 32, 65, 90, 97, 122, 10, 112, - 0, 32, 97, 114, 97, 109, 115, 10, - 123, 0, 32, 10, 58, 59, 0, 32, - 65, 90, 97, 122, 9, 13, 32, 65, - 90, 97, 122, 10, 59, 95, 0, 32, - 48, 57, 65, 90, 97, 122, 10, 59, - 0, 32, 9, 10, 13, 32, 47, 58, - 59, 125, 0, 31, 65, 90, 97, 122, - 10, 58, 59, 125, 0, 32, 65, 90, - 97, 122, 9, 13, 32, 58, 59, 95, - 48, 57, 65, 90, 97, 122, 9, 13, - 32, 58, 59, 10, 59, 114, 125, 0, - 32, 10, 114, 125, 0, 32, 101, 116, - 117, 114, 110, 9, 13, 32, 9, 13, - 32, 65, 90, 97, 122, 58, 95, 48, - 57, 65, 90, 97, 122, 58, 65, 90, - 97, 122, 59, 95, 48, 57, 65, 90, - 97, 122, 10, 125, 0, 32, 10, 59, - 125, 0, 32, 42, 64, 10, 95, 0, - 32, 48, 57, 64, 90, 97, 122, 10, - 42, 10, 42, 47, 10, 58, 59, 125, - 0, 32, 65, 90, 97, 122, 9, 10, - 13, 32, 59, 123, 0, 31, 65, 90, - 97, 122, 10, 59, 95, 123, 0, 32, - 48, 57, 65, 90, 97, 122, 58, 103, - 97, 99, 121, 95, 112, 114, 101, 102, - 105, 120, 10, 58, 0, 32, 10, 0, - 32, 65, 90, 97, 122, 59, 95, 48, - 57, 65, 90, 97, 122, 116, 104, 111, - 100, 115, 10, 123, 0, 32, 111, 112, - 101, 114, 116, 105, 101, 115, 10, 123, - 0, 32, 10, 47, 97, 99, 105, 109, - 0, 32, 10, 0, 32, 42, 47, 98, - 108, 110, 105, 10, 47, 108, 114, 125, - 0, 32, 65, 90, 97, 122, 10, 0, - 32, 42, 47, 9, 13, 32, 58, 95, - 48, 57, 65, 90, 97, 122, 9, 13, - 32, 58, 95, 101, 48, 57, 65, 90, - 97, 122, 9, 13, 32, 58, 95, 101, - 48, 57, 65, 90, 97, 122, 9, 13, - 32, 47, 59, 10, 47, 125, 0, 32, - 64, 90, 97, 122, 10, 0, 32, 42, - 47, 9, 13, 32, 42, 60, 62, 95, - 48, 57, 64, 90, 97, 122, 9, 13, - 32, 47, 59, 10, 47, 103, 107, 115, - 118, 125, 0, 32, 10, 0, 32, 42, - 47, 101, 101, 101, 97, 59, 10, 47, + 95, 0, 32, 48, 57, 65, 90, 97, + 122, 10, 59, 0, 32, 58, 103, 97, + 99, 121, 95, 112, 114, 101, 102, 105, + 120, 10, 58, 0, 32, 10, 0, 32, + 65, 90, 97, 122, 59, 95, 48, 57, + 65, 90, 97, 122, 116, 104, 111, 100, + 115, 10, 123, 0, 32, 111, 112, 101, + 114, 116, 105, 101, 115, 10, 123, 0, + 32, 10, 47, 97, 99, 105, 109, 0, + 32, 10, 0, 32, 42, 47, 98, 108, + 110, 105, 10, 47, 108, 114, 125, 0, + 32, 65, 90, 97, 122, 10, 0, 32, + 42, 47, 9, 13, 32, 58, 95, 48, + 57, 65, 90, 97, 122, 9, 13, 32, + 58, 95, 101, 48, 57, 65, 90, 97, + 122, 9, 13, 32, 58, 95, 101, 48, + 57, 65, 90, 97, 122, 9, 13, 32, + 47, 59, 10, 47, 125, 0, 32, 64, + 90, 97, 122, 10, 0, 32, 42, 47, + 9, 13, 32, 42, 60, 62, 95, 48, + 57, 64, 90, 97, 122, 9, 13, 32, + 47, 59, 10, 47, 103, 107, 115, 118, + 125, 0, 32, 10, 0, 32, 42, 47, + 101, 101, 101, 97, 59, 10, 47, 112, + 125, 0, 32, 48, 57, 65, 90, 97, + 122, 10, 0, 32, 42, 47, 10, 95, + 123, 0, 32, 48, 57, 65, 90, 97, + 122, 10, 95, 114, 117, 123, 0, 32, + 48, 57, 65, 90, 97, 122, 59, 10, + 47, 99, 108, 112, 114, 125, 0, 32, + 10, 0, 32, 42, 47, 111, 101, 97, + 101, 9, 13, 32, 47, 59, 10, 47, 112, 125, 0, 32, 48, 57, 65, 90, 97, 122, 10, 0, 32, 42, 47, 10, 95, 123, 0, 32, 48, 57, 65, 90, 97, 122, 10, 95, 114, 117, 123, 0, 32, 48, 57, 65, 90, 97, 122, 59, - 10, 47, 99, 108, 112, 114, 125, 0, - 32, 10, 0, 32, 42, 47, 111, 101, - 97, 101, 9, 13, 32, 47, 59, 10, - 47, 112, 125, 0, 32, 48, 57, 65, - 90, 97, 122, 10, 0, 32, 42, 47, - 10, 95, 123, 0, 32, 48, 57, 65, - 90, 97, 122, 10, 95, 114, 117, 123, - 0, 32, 48, 57, 65, 90, 97, 122, - 59, 10, 47, 99, 100, 101, 105, 108, - 109, 112, 125, 0, 32, 10, 0, 32, - 42, 47, 111, 97, 10, 0, 32, 111, - 118, 10, 0, 32, 59, 109, 59, 101, - 10, 0, 32, 101, 114, 59, 0 + 10, 47, 99, 100, 101, 105, 108, 109, + 112, 125, 0, 32, 10, 0, 32, 42, + 47, 111, 97, 10, 0, 32, 111, 118, + 10, 0, 32, 59, 109, 59, 101, 10, + 0, 32, 101, 114, 59, 0 }; static const char _eo_tokenizer_single_lengths[] = { @@ -752,13 +713,7 @@ static const char _eo_tokenizer_single_lengths[] = { 2, 8, 2, 6, 1, 1, 2, 2, 3, 2, 6, 4, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, - 5, 3, 2, 1, 1, 1, 1, 1, - 6, 3, 2, 3, 2, 1, 1, 1, - 1, 1, 2, 3, 3, 3, 2, 8, - 4, 6, 5, 4, 3, 1, 1, 1, - 1, 1, 3, 3, 2, 1, 0, 2, - 2, 3, 1, 1, 2, 2, 3, 4, - 6, 4, 1, 1, 1, 1, 1, 1, + 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, @@ -806,13 +761,7 @@ static const char _eo_tokenizer_range_lengths[] = { 3, 4, 1, 3, 0, 0, 4, 0, 0, 3, 1, 2, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, - 4, 1, 1, 0, 0, 0, 0, 0, - 3, 1, 1, 3, 1, 0, 0, 0, - 0, 0, 1, 3, 2, 4, 1, 3, - 3, 3, 0, 1, 1, 0, 0, 0, - 0, 0, 0, 2, 3, 0, 2, 3, - 1, 1, 0, 0, 4, 0, 0, 3, - 3, 4, 0, 0, 0, 0, 0, 0, + 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, @@ -860,25 +809,19 @@ static const short _eo_tokenizer_index_offsets[] = { 1199, 1205, 1218, 1222, 1232, 1234, 1236, 1243, 1246, 1250, 1256, 1264, 1271, 1281, 1285, 1287, 1289, 1291, 1293, 1295, 1297, 1299, 1301, 1305, - 1311, 1321, 1326, 1330, 1332, 1334, 1336, 1338, - 1340, 1350, 1355, 1359, 1366, 1370, 1372, 1374, - 1376, 1378, 1380, 1384, 1391, 1397, 1405, 1409, - 1421, 1429, 1439, 1445, 1451, 1456, 1458, 1460, - 1462, 1464, 1466, 1470, 1476, 1482, 1484, 1487, - 1493, 1497, 1502, 1504, 1506, 1513, 1516, 1520, - 1528, 1538, 1547, 1549, 1551, 1553, 1555, 1557, - 1559, 1561, 1563, 1565, 1567, 1569, 1571, 1575, - 1580, 1586, 1588, 1590, 1592, 1594, 1596, 1600, - 1602, 1604, 1606, 1608, 1610, 1612, 1614, 1616, - 1620, 1628, 1631, 1634, 1636, 1638, 1640, 1642, - 1651, 1654, 1657, 1666, 1676, 1686, 1691, 1692, - 1694, 1701, 1704, 1707, 1718, 1723, 1724, 1726, - 1735, 1738, 1741, 1743, 1745, 1747, 1749, 1751, - 1760, 1763, 1766, 1774, 1784, 1786, 1795, 1798, - 1801, 1803, 1805, 1807, 1809, 1814, 1815, 1817, - 1826, 1829, 1832, 1840, 1850, 1852, 1864, 1867, - 1870, 1872, 1874, 1877, 1880, 1883, 1885, 1887, - 1889, 1891, 1894, 1896, 1898 + 1311, 1320, 1324, 1326, 1328, 1330, 1332, 1334, + 1336, 1338, 1340, 1342, 1344, 1346, 1348, 1352, + 1357, 1363, 1365, 1367, 1369, 1371, 1373, 1377, + 1379, 1381, 1383, 1385, 1387, 1389, 1391, 1393, + 1397, 1405, 1408, 1411, 1413, 1415, 1417, 1419, + 1428, 1431, 1434, 1443, 1453, 1463, 1468, 1469, + 1471, 1478, 1481, 1484, 1495, 1500, 1501, 1503, + 1512, 1515, 1518, 1520, 1522, 1524, 1526, 1528, + 1537, 1540, 1543, 1551, 1561, 1563, 1572, 1575, + 1578, 1580, 1582, 1584, 1586, 1591, 1592, 1594, + 1603, 1606, 1609, 1617, 1627, 1629, 1641, 1644, + 1647, 1649, 1651, 1654, 1657, 1660, 1662, 1664, + 1666, 1668, 1671, 1673, 1675 }; static const short _eo_tokenizer_indicies[] = { @@ -1046,250 +989,200 @@ static const short _eo_tokenizer_indicies[] = { 281, 369, 281, 370, 281, 371, 281, 372, 281, 373, 281, 374, 281, 375, 376, 374, 281, 377, 379, 376, 378, 378, 281, 381, - 383, 384, 382, 385, 380, 382, 382, 382, - 281, 387, 376, 388, 386, 281, 389, 390, - 388, 281, 391, 281, 392, 281, 393, 281, - 394, 281, 395, 281, 397, 398, 397, 397, - 399, 401, 396, 400, 400, 281, 403, 404, - 405, 402, 281, 406, 407, 404, 281, 377, - 376, 379, 376, 378, 378, 281, 408, 409, - 405, 281, 410, 281, 411, 281, 412, 281, - 413, 281, 414, 281, 415, 416, 414, 281, - 417, 418, 419, 416, 420, 420, 281, 418, - 418, 418, 421, 421, 281, 423, 425, 424, - 422, 424, 424, 424, 281, 427, 419, 426, - 281, 419, 429, 419, 419, 430, 418, 419, - 431, 428, 420, 420, 281, 429, 418, 419, - 431, 428, 420, 420, 281, 432, 432, 432, - 434, 435, 433, 433, 433, 433, 281, 436, - 436, 436, 418, 419, 281, 438, 437, 439, - 440, 437, 281, 438, 439, 440, 437, 281, - 441, 281, 442, 281, 443, 281, 444, 281, - 445, 281, 446, 446, 446, 281, 446, 446, - 446, 447, 447, 281, 449, 448, 448, 448, - 448, 281, 450, 281, 451, 451, 281, 453, - 452, 452, 452, 452, 281, 455, 440, 454, - 281, 406, 404, 407, 404, 281, 456, 281, - 457, 281, 458, 459, 457, 459, 459, 459, - 281, 461, 462, 460, 461, 462, 463, 460, - 465, 466, 467, 469, 464, 468, 468, 281, - 470, 403, 470, 470, 404, 405, 402, 471, - 471, 281, 473, 475, 474, 476, 472, 474, - 474, 474, 281, 382, 281, 477, 281, 478, - 281, 479, 281, 480, 281, 481, 281, 482, - 281, 483, 281, 484, 281, 485, 281, 486, - 281, 487, 281, 488, 489, 487, 281, 490, - 489, 491, 491, 281, 493, 492, 492, 492, - 492, 281, 494, 281, 495, 281, 496, 281, - 497, 281, 498, 281, 499, 500, 498, 281, - 501, 281, 502, 281, 503, 281, 504, 281, - 505, 281, 506, 281, 507, 281, 508, 281, - 509, 510, 508, 281, 513, 514, 515, 516, - 517, 518, 512, 511, 513, 512, 519, 1, - 5, 520, 521, 520, 522, 520, 523, 520, - 524, 520, 527, 528, 530, 531, 532, 526, - 529, 529, 525, 527, 526, 533, 535, 69, - 534, 71, 71, 71, 72, 79, 79, 79, - 79, 534, 71, 71, 71, 72, 79, 536, - 79, 79, 79, 534, 71, 71, 71, 72, - 79, 537, 79, 79, 79, 534, 97, 97, - 97, 98, 538, 539, 541, 540, 544, 545, - 547, 543, 546, 546, 542, 544, 543, 548, - 108, 112, 549, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 549, 117, 117, - 117, 118, 550, 551, 553, 552, 556, 557, - 558, 559, 560, 561, 562, 555, 554, 556, - 555, 563, 128, 132, 564, 565, 564, 566, - 564, 567, 564, 568, 564, 570, 569, 573, - 574, 576, 577, 572, 575, 575, 575, 571, - 573, 572, 578, 151, 155, 579, 161, 163, - 164, 160, 162, 162, 162, 579, 161, 163, - 580, 581, 164, 160, 162, 162, 162, 579, - 583, 582, 586, 587, 588, 589, 590, 591, - 592, 585, 584, 586, 585, 593, 595, 202, - 594, 596, 594, 597, 594, 598, 594, 599, - 594, 231, 231, 231, 232, 600, 601, 603, - 602, 606, 607, 609, 610, 605, 608, 608, - 608, 604, 606, 605, 611, 242, 246, 612, - 252, 254, 255, 251, 253, 253, 253, 612, - 252, 254, 613, 614, 255, 251, 253, 253, - 253, 612, 616, 615, 619, 620, 621, 622, - 623, 624, 625, 626, 627, 628, 618, 617, - 619, 618, 629, 631, 293, 630, 632, 630, - 633, 630, 636, 635, 634, 637, 638, 630, - 641, 640, 639, 643, 642, 644, 630, 646, - 645, 647, 630, 650, 649, 648, 651, 630, - 652, 630, 654, 653, 0 + 383, 384, 382, 380, 382, 382, 382, 281, + 386, 376, 385, 281, 382, 281, 387, 281, + 388, 281, 389, 281, 390, 281, 391, 281, + 392, 281, 393, 281, 394, 281, 395, 281, + 396, 281, 397, 281, 398, 399, 397, 281, + 400, 399, 401, 401, 281, 403, 402, 402, + 402, 402, 281, 404, 281, 405, 281, 406, + 281, 407, 281, 408, 281, 409, 410, 408, + 281, 411, 281, 412, 281, 413, 281, 414, + 281, 415, 281, 416, 281, 417, 281, 418, + 281, 419, 420, 418, 281, 423, 424, 425, + 426, 427, 428, 422, 421, 423, 422, 429, + 1, 5, 430, 431, 430, 432, 430, 433, + 430, 434, 430, 437, 438, 440, 441, 442, + 436, 439, 439, 435, 437, 436, 443, 445, + 69, 444, 71, 71, 71, 72, 79, 79, + 79, 79, 444, 71, 71, 71, 72, 79, + 446, 79, 79, 79, 444, 71, 71, 71, + 72, 79, 447, 79, 79, 79, 444, 97, + 97, 97, 98, 448, 449, 451, 450, 454, + 455, 457, 453, 456, 456, 452, 454, 453, + 458, 108, 112, 459, 114, 114, 114, 114, + 114, 114, 114, 114, 114, 114, 459, 117, + 117, 117, 118, 460, 461, 463, 462, 466, + 467, 468, 469, 470, 471, 472, 465, 464, + 466, 465, 473, 128, 132, 474, 475, 474, + 476, 474, 477, 474, 478, 474, 480, 479, + 483, 484, 486, 487, 482, 485, 485, 485, + 481, 483, 482, 488, 151, 155, 489, 161, + 163, 164, 160, 162, 162, 162, 489, 161, + 163, 490, 491, 164, 160, 162, 162, 162, + 489, 493, 492, 496, 497, 498, 499, 500, + 501, 502, 495, 494, 496, 495, 503, 505, + 202, 504, 506, 504, 507, 504, 508, 504, + 509, 504, 231, 231, 231, 232, 510, 511, + 513, 512, 516, 517, 519, 520, 515, 518, + 518, 518, 514, 516, 515, 521, 242, 246, + 522, 252, 254, 255, 251, 253, 253, 253, + 522, 252, 254, 523, 524, 255, 251, 253, + 253, 253, 522, 526, 525, 529, 530, 531, + 532, 533, 534, 535, 536, 537, 538, 528, + 527, 529, 528, 539, 541, 293, 540, 542, + 540, 543, 540, 546, 545, 544, 547, 548, + 540, 551, 550, 549, 553, 552, 554, 540, + 556, 555, 557, 540, 560, 559, 558, 561, + 540, 562, 540, 564, 563, 0 }; static const short _eo_tokenizer_trans_targs[] = { - 336, 0, 0, 1, 336, 2, 336, 4, + 288, 0, 0, 1, 288, 2, 288, 4, 5, 6, 7, 8, 9, 10, 10, 11, - 12, 13, 12, 14, 11, 336, 12, 12, - 336, 13, 14, 15, 16, 12, 12, 336, + 12, 13, 12, 14, 11, 288, 12, 12, + 288, 13, 14, 15, 16, 12, 12, 288, 17, 17, 15, 18, 16, 17, 17, 18, 18, 20, 21, 22, 10, 24, 25, 26, 27, 28, 29, 30, 10, 32, 33, 34, - 10, 343, 36, 36, 37, 38, 343, 38, - 39, 39, 39, 40, 343, 41, 343, 42, - 43, 44, 45, 44, 45, 45, 343, 46, - 48, 49, 50, 51, 52, 53, 53, 343, - 55, 56, 57, 58, 59, 60, 61, 349, - 343, 62, 63, 64, 65, 65, 66, 66, - 66, 67, 350, 352, 68, 68, 69, 352, - 70, 352, 71, 356, 352, 72, 73, 74, - 75, 75, 76, 76, 76, 77, 357, 359, - 78, 78, 79, 359, 80, 359, 82, 82, - 359, 84, 85, 85, 359, 87, 87, 359, - 89, 90, 91, 92, 92, 359, 367, 93, - 93, 94, 367, 95, 367, 96, 96, 367, - 96, 96, 97, 98, 367, 100, 101, 102, + 10, 295, 36, 36, 37, 38, 295, 38, + 39, 39, 39, 40, 295, 41, 295, 42, + 43, 44, 45, 44, 45, 45, 295, 46, + 48, 49, 50, 51, 52, 53, 53, 295, + 55, 56, 57, 58, 59, 60, 61, 301, + 295, 62, 63, 64, 65, 65, 66, 66, + 66, 67, 302, 304, 68, 68, 69, 304, + 70, 304, 71, 308, 304, 72, 73, 74, + 75, 75, 76, 76, 76, 77, 309, 311, + 78, 78, 79, 311, 80, 311, 82, 82, + 311, 84, 85, 85, 311, 87, 87, 311, + 89, 90, 91, 92, 92, 311, 319, 93, + 93, 94, 319, 95, 319, 96, 96, 319, + 96, 96, 97, 98, 319, 100, 101, 102, 103, 104, 105, 106, 107, 97, 108, 109, 117, 110, 111, 112, 113, 114, 115, 116, - 118, 119, 120, 122, 123, 124, 373, 126, - 126, 127, 128, 373, 128, 129, 129, 129, - 130, 373, 131, 373, 133, 134, 135, 373, - 137, 138, 139, 140, 141, 142, 142, 373, - 144, 145, 146, 147, 147, 373, 149, 150, - 151, 152, 153, 154, 155, 380, 373, 156, + 118, 119, 120, 122, 123, 124, 325, 126, + 126, 127, 128, 325, 128, 129, 129, 129, + 130, 325, 131, 325, 133, 134, 135, 325, + 137, 138, 139, 140, 141, 142, 142, 325, + 144, 145, 146, 147, 147, 325, 149, 150, + 151, 152, 153, 154, 155, 332, 325, 156, 157, 158, 159, 159, 160, 160, 160, 161, - 381, 383, 162, 162, 163, 383, 164, 383, - 165, 165, 383, 165, 165, 166, 167, 383, + 333, 335, 162, 162, 163, 335, 164, 335, + 165, 165, 335, 165, 165, 166, 167, 335, 169, 170, 171, 172, 173, 174, 175, 176, 166, 177, 178, 186, 179, 180, 181, 182, 183, 184, 185, 187, 188, 189, 191, 192, - 193, 389, 195, 195, 196, 197, 389, 197, - 198, 198, 198, 199, 389, 200, 389, 202, + 193, 341, 195, 195, 196, 197, 341, 197, + 198, 198, 198, 199, 341, 200, 341, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 211, 389, 213, 214, 214, 215, 215, - 216, 216, 394, 218, 219, 220, 221, 222, - 223, 224, 224, 225, 225, 226, 226, 396, + 211, 211, 341, 213, 214, 214, 215, 215, + 216, 216, 346, 218, 219, 220, 221, 222, + 223, 224, 224, 225, 225, 226, 226, 348, 228, 229, 230, 231, 231, 232, 232, 233, - 397, 234, 242, 234, 243, 233, 235, 234, + 349, 234, 242, 234, 243, 233, 235, 234, 234, 235, 236, 237, 238, 238, 239, 239, - 239, 240, 241, 232, 232, 233, 397, 242, + 239, 240, 241, 232, 232, 233, 349, 242, 243, 244, 244, 245, 234, 234, 235, 247, 248, 249, 250, 251, 252, 253, 254, 254, - 255, 255, 256, 399, 257, 257, 256, 306, - 255, 258, 257, 257, 258, 258, 259, 260, - 261, 262, 263, 264, 265, 304, 265, 266, - 305, 268, 265, 265, 266, 268, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 274, - 275, 275, 276, 279, 281, 277, 278, 278, - 277, 279, 278, 278, 280, 280, 298, 283, - 282, 281, 276, 279, 282, 284, 284, 285, - 297, 286, 287, 288, 289, 290, 291, 292, - 292, 293, 294, 295, 295, 296, 296, 296, - 299, 300, 300, 301, 301, 301, 302, 303, - 280, 280, 276, 279, 281, 283, 304, 305, - 265, 265, 305, 266, 268, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, - 318, 319, 319, 320, 320, 401, 322, 323, - 324, 325, 326, 326, 389, 328, 329, 330, - 331, 332, 333, 334, 335, 335, 389, 336, - 337, 337, 338, 339, 340, 341, 342, 336, - 336, 3, 19, 23, 31, 343, 344, 344, - 345, 346, 347, 348, 351, 343, 343, 35, - 47, 54, 343, 343, 343, 343, 352, 353, - 353, 354, 355, 358, 352, 352, 352, 352, - 352, 352, 359, 360, 360, 361, 362, 363, - 364, 365, 366, 359, 359, 81, 83, 86, - 88, 359, 359, 367, 368, 368, 369, 370, - 371, 372, 367, 367, 99, 121, 367, 367, - 373, 374, 374, 375, 376, 377, 378, 379, - 382, 373, 373, 125, 132, 136, 143, 148, - 373, 373, 373, 373, 383, 384, 384, 385, - 386, 387, 388, 383, 383, 168, 190, 383, - 383, 389, 390, 390, 391, 392, 393, 395, - 398, 400, 402, 403, 404, 389, 389, 194, - 201, 212, 389, 394, 394, 217, 227, 389, - 396, 396, 389, 389, 246, 389, 389, 307, - 389, 401, 401, 321, 327, 389, 389 + 255, 255, 256, 351, 257, 257, 256, 258, + 255, 257, 257, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 270, 271, + 271, 272, 272, 353, 274, 275, 276, 277, + 278, 278, 341, 280, 281, 282, 283, 284, + 285, 286, 287, 287, 341, 288, 289, 289, + 290, 291, 292, 293, 294, 288, 288, 3, + 19, 23, 31, 295, 296, 296, 297, 298, + 299, 300, 303, 295, 295, 35, 47, 54, + 295, 295, 295, 295, 304, 305, 305, 306, + 307, 310, 304, 304, 304, 304, 304, 304, + 311, 312, 312, 313, 314, 315, 316, 317, + 318, 311, 311, 81, 83, 86, 88, 311, + 311, 319, 320, 320, 321, 322, 323, 324, + 319, 319, 99, 121, 319, 319, 325, 326, + 326, 327, 328, 329, 330, 331, 334, 325, + 325, 125, 132, 136, 143, 148, 325, 325, + 325, 325, 335, 336, 336, 337, 338, 339, + 340, 335, 335, 168, 190, 335, 335, 341, + 342, 342, 343, 344, 345, 347, 350, 352, + 354, 355, 356, 341, 341, 194, 201, 212, + 341, 346, 346, 217, 227, 341, 348, 348, + 341, 341, 246, 341, 341, 259, 341, 353, + 353, 273, 279, 341, 341 }; static const short _eo_tokenizer_trans_actions[] = { - 219, 0, 1, 0, 209, 0, 242, 0, - 0, 0, 0, 0, 0, 45, 0, 3, - 51, 51, 323, 51, 0, 326, 0, 1, - 211, 0, 0, 0, 3, 13, 284, 287, - 11, 281, 11, 11, 0, 0, 1, 0, - 1, 0, 0, 0, 43, 0, 0, 0, - 0, 0, 0, 0, 49, 0, 0, 0, - 47, 77, 0, 1, 0, 0, 61, 1, - 3, 0, 1, 0, 59, 0, 221, 0, - 0, 5, 251, 0, 3, 0, 254, 0, - 0, 0, 0, 0, 0, 3, 0, 248, - 0, 0, 0, 0, 0, 3, 0, 335, - 75, 0, 0, 0, 0, 1, 3, 0, - 1, 0, 0, 95, 0, 1, 0, 79, - 0, 224, 0, 338, 93, 0, 0, 0, - 0, 1, 3, 0, 1, 0, 0, 117, - 0, 1, 0, 97, 0, 227, 0, 1, - 99, 0, 0, 1, 103, 0, 1, 101, - 0, 0, 0, 0, 1, 105, 133, 0, - 1, 0, 119, 0, 230, 0, 1, 121, - 7, 260, 0, 0, 263, 0, 0, 0, - 0, 0, 0, 0, 0, 344, 344, 0, + 205, 0, 1, 0, 195, 0, 228, 0, + 0, 0, 0, 0, 0, 31, 0, 3, + 37, 37, 291, 37, 0, 294, 0, 1, + 197, 0, 0, 0, 3, 13, 270, 273, + 11, 267, 11, 11, 0, 0, 1, 0, + 1, 0, 0, 0, 29, 0, 0, 0, + 0, 0, 0, 0, 35, 0, 0, 0, + 33, 63, 0, 1, 0, 0, 47, 1, + 3, 0, 1, 0, 45, 0, 207, 0, + 0, 5, 237, 0, 3, 0, 240, 0, + 0, 0, 0, 0, 0, 3, 0, 234, + 0, 0, 0, 0, 0, 3, 0, 303, + 61, 0, 0, 0, 0, 1, 3, 0, + 1, 0, 0, 81, 0, 1, 0, 65, + 0, 210, 0, 306, 79, 0, 0, 0, + 0, 1, 3, 0, 1, 0, 0, 103, + 0, 1, 0, 83, 0, 213, 0, 1, + 85, 0, 0, 1, 89, 0, 1, 87, + 0, 0, 0, 0, 1, 91, 119, 0, + 1, 0, 105, 0, 216, 0, 1, 107, + 7, 246, 0, 0, 249, 0, 0, 0, + 0, 0, 0, 0, 0, 312, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 155, 0, - 1, 0, 0, 137, 1, 3, 0, 1, - 0, 135, 0, 233, 0, 0, 0, 272, - 0, 0, 0, 0, 0, 3, 0, 269, - 0, 0, 0, 0, 1, 139, 0, 0, - 0, 0, 0, 3, 0, 341, 153, 0, + 0, 0, 0, 0, 0, 0, 141, 0, + 1, 0, 0, 123, 1, 3, 0, 1, + 0, 121, 0, 219, 0, 0, 0, 258, + 0, 0, 0, 0, 0, 3, 0, 255, + 0, 0, 0, 0, 1, 125, 0, 0, + 0, 0, 0, 3, 0, 309, 139, 0, 0, 0, 0, 1, 3, 0, 1, 0, - 0, 171, 0, 1, 0, 157, 0, 236, - 0, 1, 159, 9, 275, 0, 0, 278, + 0, 157, 0, 1, 0, 143, 0, 222, + 0, 1, 145, 9, 261, 0, 0, 264, 0, 0, 0, 0, 0, 0, 0, 0, - 348, 348, 0, 0, 0, 0, 0, 0, + 316, 316, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 207, 0, 1, 0, 0, 175, 1, - 3, 0, 1, 0, 173, 0, 239, 0, + 0, 193, 0, 1, 0, 0, 161, 1, + 3, 0, 1, 0, 159, 0, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 181, 0, 0, 1, 0, 1, + 0, 1, 167, 0, 0, 1, 0, 1, 3, 0, 25, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 3, 0, 23, 0, 0, 0, 0, 1, 0, 1, 3, - 0, 15, 15, 290, 15, 0, 15, 0, + 0, 15, 15, 276, 15, 0, 15, 0, 1, 0, 0, 0, 0, 1, 3, 0, - 1, 0, 0, 19, 296, 299, 19, 0, - 0, 3, 0, 0, 17, 293, 17, 0, + 1, 0, 0, 19, 282, 285, 19, 0, + 0, 3, 0, 0, 17, 279, 17, 0, 0, 0, 0, 0, 0, 0, 0, 1, - 0, 1, 3, 0, 27, 302, 0, 0, - 27, 27, 0, 1, 0, 1, 0, 0, - 0, 0, 0, 0, 29, 29, 305, 29, - 308, 29, 0, 1, 0, 0, 1, 0, - 1, 0, 0, 0, 0, 0, 0, 1, - 0, 1, 0, 0, 3, 3, 35, 314, - 0, 35, 0, 1, 0, 1, 0, 0, - 33, 0, 33, 33, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 39, 0, 3, 0, 41, 0, 1, - 0, 0, 1, 3, 0, 1, 0, 0, - 37, 317, 37, 37, 320, 37, 0, 3, - 31, 311, 0, 31, 31, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 1, 3, 0, 21, 0, 0, - 0, 0, 0, 1, 185, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 183, 213, - 0, 1, 329, 57, 57, 57, 57, 215, - 217, 0, 0, 0, 0, 65, 0, 1, - 329, 332, 332, 332, 0, 67, 73, 0, - 0, 0, 69, 245, 71, 63, 83, 0, - 1, 329, 332, 0, 85, 91, 87, 257, - 89, 81, 109, 0, 1, 329, 57, 57, - 57, 57, 0, 111, 115, 0, 0, 0, - 0, 113, 107, 125, 0, 1, 329, 332, - 332, 0, 127, 131, 0, 0, 129, 123, - 143, 0, 1, 329, 57, 57, 57, 57, - 0, 145, 151, 0, 0, 0, 0, 0, - 147, 266, 149, 141, 163, 0, 1, 329, - 332, 332, 0, 165, 169, 0, 0, 167, - 161, 189, 0, 1, 329, 57, 57, 57, - 57, 57, 57, 57, 0, 191, 205, 0, - 0, 0, 197, 0, 1, 0, 0, 195, - 0, 1, 201, 179, 0, 199, 177, 0, - 193, 0, 1, 0, 0, 203, 187 + 0, 1, 3, 0, 27, 288, 0, 0, + 27, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 1, 3, 0, 21, 0, 0, 0, 0, + 0, 1, 171, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 169, 199, 0, 1, + 297, 43, 43, 43, 43, 201, 203, 0, + 0, 0, 0, 51, 0, 1, 297, 300, + 300, 300, 0, 53, 59, 0, 0, 0, + 55, 231, 57, 49, 69, 0, 1, 297, + 300, 0, 71, 77, 73, 243, 75, 67, + 95, 0, 1, 297, 43, 43, 43, 43, + 0, 97, 101, 0, 0, 0, 0, 99, + 93, 111, 0, 1, 297, 300, 300, 0, + 113, 117, 0, 0, 115, 109, 129, 0, + 1, 297, 43, 43, 43, 43, 0, 131, + 137, 0, 0, 0, 0, 0, 133, 252, + 135, 127, 149, 0, 1, 297, 300, 300, + 0, 151, 155, 0, 0, 153, 147, 175, + 0, 1, 297, 43, 43, 43, 43, 43, + 43, 43, 0, 177, 191, 0, 0, 0, + 183, 0, 1, 0, 0, 181, 0, 1, + 187, 165, 0, 185, 163, 0, 179, 0, + 1, 0, 0, 189, 173 }; static const short _eo_tokenizer_to_state_actions[] = { @@ -1329,19 +1222,13 @@ static const short _eo_tokenizer_to_state_actions[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 39, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 53, 0, 0, 0, 0, 0, 0, 53, - 0, 0, 0, 0, 0, 0, 0, 0, - 53, 0, 0, 0, 0, 0, 0, 53, - 0, 0, 0, 0, 0, 0, 0, 53, - 0, 0, 0, 0, 0, 53, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 53, - 0, 0, 0, 0, 0, 53, 0, 0, + 39, 0, 0, 0, 0, 0, 0, 39, + 0, 0, 0, 0, 0, 0, 0, 39, + 0, 0, 0, 0, 0, 39, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 39, + 0, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; @@ -1383,19 +1270,13 @@ static const short _eo_tokenizer_from_state_actions[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 41, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 55, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 0, - 55, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 55, 0, 0, + 41, 0, 0, 0, 0, 0, 0, 41, + 0, 0, 0, 0, 0, 0, 0, 41, + 0, 0, 0, 0, 0, 41, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 41, + 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; @@ -1437,38 +1318,32 @@ static const short _eo_tokenizer_eof_trans[] = { 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, - 0, 520, 521, 521, 521, 521, 521, 0, - 534, 535, 535, 535, 535, 539, 540, 541, - 0, 549, 550, 550, 551, 552, 553, 0, - 564, 565, 565, 565, 565, 565, 570, 0, - 579, 580, 580, 580, 583, 0, 594, 595, - 595, 595, 595, 595, 601, 602, 603, 0, - 612, 613, 613, 613, 616, 0, 630, 631, - 631, 631, 635, 631, 640, 643, 631, 646, - 631, 649, 631, 631, 654 + 0, 430, 431, 431, 431, 431, 431, 0, + 444, 445, 445, 445, 445, 449, 450, 451, + 0, 459, 460, 460, 461, 462, 463, 0, + 474, 475, 475, 475, 475, 475, 480, 0, + 489, 490, 490, 490, 493, 0, 504, 505, + 505, 505, 505, 505, 511, 512, 513, 0, + 522, 523, 523, 523, 526, 0, 540, 541, + 541, 541, 545, 541, 550, 553, 541, 556, + 541, 559, 541, 541, 564 }; -static const int eo_tokenizer_start = 336; -static const int eo_tokenizer_first_final = 336; +static const int eo_tokenizer_start = 288; +static const int eo_tokenizer_first_final = 288; static const int eo_tokenizer_error = -1; -static const int eo_tokenizer_en_tokenize_accessor = 343; -static const int eo_tokenizer_en_tokenize_params = 352; -static const int eo_tokenizer_en_tokenize_property = 359; -static const int eo_tokenizer_en_tokenize_properties = 367; -static const int eo_tokenizer_en_tokenize_method = 373; -static const int eo_tokenizer_en_tokenize_methods = 383; -static const int eo_tokenizer_en_tokenize_class = 389; -static const int eo_tokenizer_en_main = 336; +static const int eo_tokenizer_en_tokenize_accessor = 295; +static const int eo_tokenizer_en_tokenize_params = 304; +static const int eo_tokenizer_en_tokenize_property = 311; +static const int eo_tokenizer_en_tokenize_properties = 319; +static const int eo_tokenizer_en_tokenize_method = 325; +static const int eo_tokenizer_en_tokenize_methods = 335; +static const int eo_tokenizer_en_tokenize_class = 341; +static const int eo_tokenizer_en_main = 288; -#line 1040 "lib/eolian/eo_lexer.rl" +#line 967 "lib/eolian/eo_lexer.rl" Eina_Bool @@ -1492,7 +1367,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) } -#line 1496 "lib/eolian/eo_lexer.c" +#line 1371 "lib/eolian/eo_lexer.c" { toknz->cs = eo_tokenizer_start; toknz->ts = 0; @@ -1500,7 +1375,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) toknz->act = 0; } -#line 1063 "lib/eolian/eo_lexer.rl" +#line 990 "lib/eolian/eo_lexer.rl" while (!done) { @@ -1527,7 +1402,7 @@ eo_tokenizer_walk(Eo_Tokenizer *toknz, const char *source) } -#line 1531 "lib/eolian/eo_lexer.c" +#line 1406 "lib/eolian/eo_lexer.c" { int _klen; unsigned int _trans; @@ -1542,11 +1417,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 41: + case 34: #line 1 "NONE" { toknz->ts = ( toknz->p);} break; -#line 1550 "lib/eolian/eo_lexer.c" +#line 1425 "lib/eolian/eo_lexer.c" } } @@ -1846,94 +1721,31 @@ _eof_trans: } break; case 28: -#line 895 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (toknz->tmp.impl->legacy) - ABORT(toknz, "Legacy section already allocated for implement item"); - toknz->tmp.impl->legacy = calloc(1, sizeof(Eo_Implement_Legacy_Def)); - } - break; - case 29: -#line 902 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->function_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 30: -#line 909 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); - toknz->tmp.impl->legacy->params = eina_list_append( - toknz->tmp.impl->legacy->params, toknz->tmp.impl_leg_param); - - toknz->tmp.impl_leg_param->eo_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 31: -#line 918 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->legacy_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 32: -#line 924 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); - } - break; - case 33: -#line 930 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_type= _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 34: -#line 937 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_value = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 35: -#line 1006 "lib/eolian/eo_lexer.rl" +#line 933 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR; } break; - case 36: -#line 1009 "lib/eolian/eo_lexer.rl" + case 29: +#line 936 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT; } break; - case 37: -#line 1012 "lib/eolian/eo_lexer.rl" + case 30: +#line 939 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN; } break; - case 38: -#line 1015 "lib/eolian/eo_lexer.rl" + case 31: +#line 942 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE; } break; - case 39: -#line 1019 "lib/eolian/eo_lexer.rl" + case 32: +#line 946 "lib/eolian/eo_lexer.rl" { if (toknz->tmp.kls != NULL) ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name); @@ -1941,11 +1753,11 @@ _eof_trans: toknz->tmp.kls->type = toknz->tmp.kls_type; } break; - case 42: + case 35: #line 1 "NONE" { toknz->te = ( toknz->p)+1;} break; - case 43: + case 36: #line 451 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); @@ -1955,22 +1767,22 @@ _eof_trans: INF(" %s", toknz->tmp.accessor->comment); }} break; - case 44: + case 37: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 45: + case 38: #line 514 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 46: + case 39: #line 515 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 47: + case 40: #line 480 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" }"); @@ -1978,10 +1790,10 @@ _eof_trans: toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); toknz->tmp.accessor = NULL; toknz->current_nesting--; - { toknz->cs = 359; goto _again;} + { toknz->cs = 311; goto _again;} }} break; - case 48: + case 41: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -2000,15 +1812,15 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 49: + case 42: #line 510 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 50: + case 43: #line 513 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 51: + case 44: #line 480 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ INF(" }"); @@ -2016,10 +1828,10 @@ _eof_trans: toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); toknz->tmp.accessor = NULL; toknz->current_nesting--; - { toknz->cs = 359; goto _again;} + { toknz->cs = 311; goto _again;} }} break; - case 52: + case 45: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -2038,11 +1850,11 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 53: + case 46: #line 513 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}} break; - case 54: + case 47: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -2059,96 +1871,172 @@ _eof_trans: toknz->current_nesting, toknz->current_line, *( toknz->p), buf); toknz->cs = eo_tokenizer_error; {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 48: +#line 385 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("comment[%d] line%03d:%03d", toknz->cs, + toknz->saved.line, toknz->current_line); + }} + break; + case 49: +#line 539 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->tmp.param = NULL; + toknz->current_nesting--; + if (toknz->tmp.prop) + { toknz->cs = 311; goto _again;} + else if (toknz->tmp.meth) + { toknz->cs = 325; goto _again;} + else + ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); + }} + break; + case 50: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 51: +#line 555 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 52: +#line 557 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 53: +#line 539 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->tmp.param = NULL; + toknz->current_nesting--; + if (toknz->tmp.prop) + { toknz->cs = 311; goto _again;} + else if (toknz->tmp.meth) + { toknz->cs = 325; goto _again;} + else + ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); + }} + break; + case 54: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 55: +#line 557 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}} + break; + case 56: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 57: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 56: -#line 539 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->tmp.param = NULL; - toknz->current_nesting--; - if (toknz->tmp.prop) - { toknz->cs = 359; goto _again;} - else if (toknz->tmp.meth) - { toknz->cs = 373; goto _again;} - else - ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); - }} - break; - case 57: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 58: -#line 555 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 564 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" get {"); + toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); + toknz->current_nesting++; + { toknz->cs = 295; goto _again;} + }} break; case 59: -#line 557 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 571 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" set {"); + toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); + toknz->current_nesting++; + { toknz->cs = 295; goto _again;} + }} break; case 60: -#line 539 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->tmp.param = NULL; - toknz->current_nesting--; - if (toknz->tmp.prop) - { toknz->cs = 359; goto _again;} - else if (toknz->tmp.meth) - { toknz->cs = 373; goto _again;} - else - ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); +#line 578 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" keys {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.prop->keys); + { toknz->cs = 304; goto _again;} }} break; case 61: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ +#line 585 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" values {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.prop->values); + { toknz->cs = 304; goto _again;} }} break; case 62: -#line 557 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} +#line 592 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); + if (eina_list_count(toknz->tmp.prop->accessors) == 0) + WRN("property '%s' has no accessors.", toknz->tmp.prop->name); + INF(" }"); + toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); + toknz->tmp.prop = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 319; goto _again;} + }} break; case 63: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2166,63 +2054,86 @@ _eof_trans: }} break; case 64: +#line 610 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 65: +#line 592 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); + if (eina_list_count(toknz->tmp.prop->accessors) == 0) + WRN("property '%s' has no accessors.", toknz->tmp.prop->name); + INF(" }"); + toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); + toknz->tmp.prop = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 319; goto _again;} + }} + break; + case 66: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 67: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 68: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 65: -#line 564 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" get {"); - toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); - toknz->current_nesting++; - { toknz->cs = 343; goto _again;} - }} - break; - case 66: -#line 571 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" set {"); - toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); - toknz->current_nesting++; - { toknz->cs = 343; goto _again;} - }} - break; - case 67: -#line 578 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" keys {"); - toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.prop->keys); - { toknz->cs = 352; goto _again;} - }} - break; - case 68: -#line 585 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" values {"); - toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.prop->values); - { toknz->cs = 352; goto _again;} }} break; case 69: -#line 592 "lib/eolian/eo_lexer.rl" +#line 622 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - if (eina_list_count(toknz->tmp.prop->accessors) == 0) - WRN("property '%s' has no accessors.", toknz->tmp.prop->name); - INF(" }"); - toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); - toknz->tmp.prop = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 367; goto _again;} + INF(" %s {", toknz->tmp.prop->name); + toknz->current_nesting++; + { toknz->cs = 311; goto _again;} }} break; case 70: +#line 639 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} + }} + break; + case 71: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -2241,46 +2152,21 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 71: -#line 610 "lib/eolian/eo_lexer.rl" + case 72: +#line 648 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 72: -#line 592 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - if (eina_list_count(toknz->tmp.prop->accessors) == 0) - WRN("property '%s' has no accessors.", toknz->tmp.prop->name); - INF(" }"); - toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); - toknz->tmp.prop = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 367; goto _again;} - }} break; case 73: -#line 394 "lib/eolian/eo_lexer.rl" +#line 639 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} }} break; case 74: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2298,82 +2184,86 @@ _eof_trans: }} break; case 75: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 76: +#line 657 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + if (toknz->tmp.meth->comment != NULL) + ABORT(toknz, "method has already a comment"); + toknz->tmp.meth->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); + INF(" %s", toknz->tmp.meth->comment); + }} + break; + case 77: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 76: -#line 622 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - INF(" %s {", toknz->tmp.prop->name); - toknz->current_nesting++; - { toknz->cs = 359; goto _again;} - }} - break; - case 77: -#line 639 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} }} break; case 78: -#line 394 "lib/eolian/eo_lexer.rl" +#line 665 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" params {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.meth->params); + { toknz->cs = 304; goto _again;} }} break; case 79: -#line 648 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 737 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;} break; case 80: -#line 639 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} +#line 738 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;} break; case 81: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ +#line 700 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + Eina_List **l = NULL; + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" }"); + switch (toknz->current_methods_type) { + case METH_CONSTRUCTOR: + l = &toknz->tmp.kls->constructors; + break; + case METH_REGULAR: + l = &toknz->tmp.kls->methods; + break; + default: + ABORT(toknz, "unknown method type %d", toknz->current_methods_type); + } + toknz->tmp.meth->type = toknz->current_methods_type; + *l = eina_list_append(*l, toknz->tmp.meth); + toknz->tmp.meth = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 335; goto _again;} }} break; case 82: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2391,65 +2281,105 @@ _eof_trans: }} break; case 83: -#line 657 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - if (toknz->tmp.meth->comment != NULL) - ABORT(toknz, "method has already a comment"); - toknz->tmp.meth->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); - INF(" %s", toknz->tmp.meth->comment); - }} +#line 732 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 84: +#line 736 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 85: +#line 700 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + Eina_List **l = NULL; + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" }"); + switch (toknz->current_methods_type) { + case METH_CONSTRUCTOR: + l = &toknz->tmp.kls->constructors; + break; + case METH_REGULAR: + l = &toknz->tmp.kls->methods; + break; + default: + ABORT(toknz, "unknown method type %d", toknz->current_methods_type); + } + toknz->tmp.meth->type = toknz->current_methods_type; + *l = eina_list_append(*l, toknz->tmp.meth); + toknz->tmp.meth = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 335; goto _again;} + }} + break; + case 86: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 87: +#line 736 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}} + break; + case 88: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 89: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 85: -#line 665 "lib/eolian/eo_lexer.rl" + case 90: +#line 745 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" params {"); + INF(" %s {", toknz->tmp.meth->name); toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.meth->params); - { toknz->cs = 352; goto _again;} + { toknz->cs = 325; goto _again;} }} break; - case 86: -#line 737 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;} - break; - case 87: -#line 738 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;} - break; - case 88: -#line 700 "lib/eolian/eo_lexer.rl" + case 91: +#line 762 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ - Eina_List **l = NULL; - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" }"); - switch (toknz->current_methods_type) { - case METH_CONSTRUCTOR: - l = &toknz->tmp.kls->constructors; - break; - case METH_REGULAR: - l = &toknz->tmp.kls->methods; - break; - default: - ABORT(toknz, "unknown method type %d", toknz->current_methods_type); - } - toknz->tmp.meth->type = toknz->current_methods_type; - *l = eina_list_append(*l, toknz->tmp.meth); - toknz->tmp.meth = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; toknz->current_nesting--; - { toknz->cs = 383; goto _again;} + { toknz->cs = 341; goto _again;} }} break; - case 89: + case 92: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -2466,66 +2396,24 @@ _eof_trans: toknz->current_nesting, toknz->current_line, *( toknz->p), buf); toknz->cs = eo_tokenizer_error; {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 90: -#line 732 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 91: -#line 736 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 92: -#line 700 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - Eina_List **l = NULL; - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" }"); - switch (toknz->current_methods_type) { - case METH_CONSTRUCTOR: - l = &toknz->tmp.kls->constructors; - break; - case METH_REGULAR: - l = &toknz->tmp.kls->methods; - break; - default: - ABORT(toknz, "unknown method type %d", toknz->current_methods_type); - } - toknz->tmp.meth->type = toknz->current_methods_type; - *l = eina_list_append(*l, toknz->tmp.meth); - toknz->tmp.meth = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 383; goto _again;} }} break; case 93: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} +#line 772 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 94: -#line 736 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} +#line 762 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} + }} break; case 95: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -2543,82 +2431,6 @@ _eof_trans: }} break; case 96: -#line 385 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("comment[%d] line%03d:%03d", toknz->cs, - toknz->saved.line, toknz->current_line); - }} - break; - case 97: -#line 745 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" %s {", toknz->tmp.meth->name); - toknz->current_nesting++; - { toknz->cs = 373; goto _again;} - }} - break; - case 98: -#line 762 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} - break; - case 99: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 100: -#line 772 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 101: -#line 762 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} - break; - case 102: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 103: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -2637,7 +2449,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 104: + case 97: #line 781 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -2646,53 +2458,53 @@ _eof_trans: toknz->tmp.kls->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); }} break; - case 105: + case 98: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 106: + case 99: #line 799 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 107: + case 100: #line 802 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 108: + case 101: #line 805 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" constructors {"); toknz->current_methods_type = METH_CONSTRUCTOR; toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 383; goto _again;} + { toknz->cs = 335; goto _again;} }} break; - case 109: + case 102: #line 813 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" properties {"); toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 367; goto _again;} + { toknz->cs = 319; goto _again;} }} break; - case 110: + case 103: #line 820 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" begin methods"); toknz->current_methods_type = METH_REGULAR; toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 383; goto _again;} + { toknz->cs = 335; goto _again;} }} break; - case 111: + case 104: #line 828 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -2700,10 +2512,10 @@ _eof_trans: toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 336; goto _again;} + { toknz->cs = 288; goto _again;} }} break; - case 112: + case 105: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -2722,33 +2534,33 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 113: -#line 982 "lib/eolian/eo_lexer.rl" + case 106: +#line 909 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 114: -#line 985 "lib/eolian/eo_lexer.rl" + case 107: +#line 912 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 115: -#line 986 "lib/eolian/eo_lexer.rl" + case 108: +#line 913 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 116: -#line 987 "lib/eolian/eo_lexer.rl" + case 109: +#line 914 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 117: + case 110: #line 799 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 118: + case 111: #line 802 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 119: + case 112: #line 828 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -2756,10 +2568,10 @@ _eof_trans: toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 336; goto _again;} + { toknz->cs = 288; goto _again;} }} break; - case 120: + case 113: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -2778,7 +2590,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 121: + case 114: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -2797,23 +2609,23 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 122: + case 115: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 123: -#line 999 "lib/eolian/eo_lexer.rl" + case 116: +#line 926 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); INF("begin class: %s", toknz->tmp.kls->name); toknz->current_nesting++; - { toknz->cs = 389; goto _again;} + { toknz->cs = 341; goto _again;} }} break; - case 124: + case 117: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -2832,11 +2644,11 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 125: -#line 1034 "lib/eolian/eo_lexer.rl" + case 118: +#line 961 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 126: + case 119: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -2855,7 +2667,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 127: + case 120: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -2874,7 +2686,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; -#line 2878 "lib/eolian/eo_lexer.c" +#line 2690 "lib/eolian/eo_lexer.c" } } @@ -2883,11 +2695,11 @@ _again: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 40: + case 33: #line 1 "NONE" { toknz->ts = 0;} break; -#line 2891 "lib/eolian/eo_lexer.c" +#line 2703 "lib/eolian/eo_lexer.c" } } @@ -2905,12 +2717,12 @@ _again: _out: {} } -#line 1089 "lib/eolian/eo_lexer.rl" +#line 1016 "lib/eolian/eo_lexer.rl" if ( toknz->cs == -#line 2912 "lib/eolian/eo_lexer.c" +#line 2724 "lib/eolian/eo_lexer.c" -1 -#line 1090 "lib/eolian/eo_lexer.rl" +#line 1017 "lib/eolian/eo_lexer.rl" ) { ERR("%s: wrong termination", source); @@ -2956,7 +2768,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns Eina_Bool ret = EINA_TRUE; -#line 2960 "lib/eolian/eo_lexer.c" +#line 2772 "lib/eolian/eo_lexer.c" { toknz->cs = eo_tokenizer_start; toknz->ts = 0; @@ -2964,7 +2776,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns toknz->act = 0; } -#line 1135 "lib/eolian/eo_lexer.rl" +#line 1062 "lib/eolian/eo_lexer.rl" toknz->p = buffer; @@ -2973,7 +2785,7 @@ eo_tokenizer_mem_walk(Eo_Tokenizer *toknz, const char *source, char *buffer, uns toknz->eof = toknz->pe; -#line 2977 "lib/eolian/eo_lexer.c" +#line 2789 "lib/eolian/eo_lexer.c" { int _klen; unsigned int _trans; @@ -2988,11 +2800,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 41: + case 34: #line 1 "NONE" { toknz->ts = ( toknz->p);} break; -#line 2996 "lib/eolian/eo_lexer.c" +#line 2808 "lib/eolian/eo_lexer.c" } } @@ -3292,94 +3104,31 @@ _eof_trans: } break; case 28: -#line 895 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (toknz->tmp.impl->legacy) - ABORT(toknz, "Legacy section already allocated for implement item"); - toknz->tmp.impl->legacy = calloc(1, sizeof(Eo_Implement_Legacy_Def)); - } - break; - case 29: -#line 902 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->function_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 30: -#line 909 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); - toknz->tmp.impl->legacy->params = eina_list_append( - toknz->tmp.impl->legacy->params, toknz->tmp.impl_leg_param); - - toknz->tmp.impl_leg_param->eo_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 31: -#line 918 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->legacy_name = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 32: -#line 924 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-2); - } - break; - case 33: -#line 930 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_type= _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 34: -#line 937 "lib/eolian/eo_lexer.rl" - { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_value = _eo_tokenizer_token_get(toknz, ( toknz->p)); - } - break; - case 35: -#line 1006 "lib/eolian/eo_lexer.rl" +#line 933 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_REGULAR; } break; - case 36: -#line 1009 "lib/eolian/eo_lexer.rl" + case 29: +#line 936 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_ABSTRACT; } break; - case 37: -#line 1012 "lib/eolian/eo_lexer.rl" + case 30: +#line 939 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_MIXIN; } break; - case 38: -#line 1015 "lib/eolian/eo_lexer.rl" + case 31: +#line 942 "lib/eolian/eo_lexer.rl" { toknz->tmp.kls_type = EOLIAN_CLASS_INTERFACE; } break; - case 39: -#line 1019 "lib/eolian/eo_lexer.rl" + case 32: +#line 946 "lib/eolian/eo_lexer.rl" { if (toknz->tmp.kls != NULL) ABORT(toknz, "there is a pending class definition %s", toknz->tmp.kls->name); @@ -3387,11 +3136,11 @@ _eof_trans: toknz->tmp.kls->type = toknz->tmp.kls_type; } break; - case 42: + case 35: #line 1 "NONE" { toknz->te = ( toknz->p)+1;} break; - case 43: + case 36: #line 451 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.accessor) ABORT(toknz, "No accessor!!!"); @@ -3401,22 +3150,22 @@ _eof_trans: INF(" %s", toknz->tmp.accessor->comment); }} break; - case 44: + case 37: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 45: + case 38: #line 514 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 46: + case 39: #line 515 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;} break; - case 47: + case 40: #line 480 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" }"); @@ -3424,10 +3173,10 @@ _eof_trans: toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); toknz->tmp.accessor = NULL; toknz->current_nesting--; - { toknz->cs = 359; goto _again;} + { toknz->cs = 311; goto _again;} }} break; - case 48: + case 41: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -3446,15 +3195,15 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 49: + case 42: #line 510 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 50: + case 43: #line 513 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 51: + case 44: #line 480 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ INF(" }"); @@ -3462,10 +3211,10 @@ _eof_trans: toknz->tmp.prop->accessors = eina_list_append(toknz->tmp.prop->accessors, toknz->tmp.accessor); toknz->tmp.accessor = NULL; toknz->current_nesting--; - { toknz->cs = 359; goto _again;} + { toknz->cs = 311; goto _again;} }} break; - case 52: + case 45: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -3484,11 +3233,11 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 53: + case 46: #line 513 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}} break; - case 54: + case 47: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -3505,96 +3254,172 @@ _eof_trans: toknz->current_nesting, toknz->current_line, *( toknz->p), buf); toknz->cs = eo_tokenizer_error; {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 48: +#line 385 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("comment[%d] line%03d:%03d", toknz->cs, + toknz->saved.line, toknz->current_line); + }} + break; + case 49: +#line 539 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->tmp.param = NULL; + toknz->current_nesting--; + if (toknz->tmp.prop) + { toknz->cs = 311; goto _again;} + else if (toknz->tmp.meth) + { toknz->cs = 325; goto _again;} + else + ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); + }} + break; + case 50: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 51: +#line 555 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 52: +#line 557 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 53: +#line 539 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->tmp.param = NULL; + toknz->current_nesting--; + if (toknz->tmp.prop) + { toknz->cs = 311; goto _again;} + else if (toknz->tmp.meth) + { toknz->cs = 325; goto _again;} + else + ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); + }} + break; + case 54: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 55: +#line 557 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}} + break; + case 56: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 57: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 56: -#line 539 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->tmp.param = NULL; - toknz->current_nesting--; - if (toknz->tmp.prop) - { toknz->cs = 359; goto _again;} - else if (toknz->tmp.meth) - { toknz->cs = 373; goto _again;} - else - ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); - }} - break; - case 57: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; case 58: -#line 555 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 564 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" get {"); + toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); + toknz->current_nesting++; + { toknz->cs = 295; goto _again;} + }} break; case 59: -#line 557 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 571 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" set {"); + toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); + toknz->current_nesting++; + { toknz->cs = 295; goto _again;} + }} break; case 60: -#line 539 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->tmp.param = NULL; - toknz->current_nesting--; - if (toknz->tmp.prop) - { toknz->cs = 359; goto _again;} - else if (toknz->tmp.meth) - { toknz->cs = 373; goto _again;} - else - ABORT(toknz, "leaving tokenize_params but there is no property nor method pending"); +#line 578 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" keys {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.prop->keys); + { toknz->cs = 304; goto _again;} }} break; case 61: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ +#line 585 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" values {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.prop->values); + { toknz->cs = 304; goto _again;} }} break; case 62: -#line 557 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} +#line 592 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); + if (eina_list_count(toknz->tmp.prop->accessors) == 0) + WRN("property '%s' has no accessors.", toknz->tmp.prop->name); + INF(" }"); + toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); + toknz->tmp.prop = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 319; goto _again;} + }} break; case 63: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -3612,63 +3437,86 @@ _eof_trans: }} break; case 64: +#line 610 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 65: +#line 592 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); + if (eina_list_count(toknz->tmp.prop->accessors) == 0) + WRN("property '%s' has no accessors.", toknz->tmp.prop->name); + INF(" }"); + toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); + toknz->tmp.prop = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 319; goto _again;} + }} + break; + case 66: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 67: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 68: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 65: -#line 564 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" get {"); - toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, GETTER); - toknz->current_nesting++; - { toknz->cs = 343; goto _again;} - }} - break; - case 66: -#line 571 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" set {"); - toknz->tmp.accessor = _eo_tokenizer_accessor_get(toknz, SETTER); - toknz->current_nesting++; - { toknz->cs = 343; goto _again;} - }} - break; - case 67: -#line 578 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" keys {"); - toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.prop->keys); - { toknz->cs = 352; goto _again;} - }} - break; - case 68: -#line 585 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" values {"); - toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.prop->values); - { toknz->cs = 352; goto _again;} }} break; case 69: -#line 592 "lib/eolian/eo_lexer.rl" +#line 622 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - if (eina_list_count(toknz->tmp.prop->accessors) == 0) - WRN("property '%s' has no accessors.", toknz->tmp.prop->name); - INF(" }"); - toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); - toknz->tmp.prop = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 367; goto _again;} + INF(" %s {", toknz->tmp.prop->name); + toknz->current_nesting++; + { toknz->cs = 311; goto _again;} }} break; case 70: +#line 639 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} + }} + break; + case 71: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -3687,46 +3535,21 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 71: -#line 610 "lib/eolian/eo_lexer.rl" + case 72: +#line 648 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 72: -#line 592 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - if (eina_list_count(toknz->tmp.prop->accessors) == 0) - WRN("property '%s' has no accessors.", toknz->tmp.prop->name); - INF(" }"); - toknz->tmp.kls->properties = eina_list_append(toknz->tmp.kls->properties, toknz->tmp.prop); - toknz->tmp.prop = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 367; goto _again;} - }} break; case 73: -#line 394 "lib/eolian/eo_lexer.rl" +#line 639 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + INF(" }"); + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} }} break; case 74: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -3744,82 +3567,86 @@ _eof_trans: }} break; case 75: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 76: +#line 657 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + if (toknz->tmp.meth->comment != NULL) + ABORT(toknz, "method has already a comment"); + toknz->tmp.meth->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); + INF(" %s", toknz->tmp.meth->comment); + }} + break; + case 77: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); - }} - break; - case 76: -#line 622 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.prop) ABORT(toknz, "No property!!!"); - INF(" %s {", toknz->tmp.prop->name); - toknz->current_nesting++; - { toknz->cs = 359; goto _again;} - }} - break; - case 77: -#line 639 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} }} break; case 78: -#line 394 "lib/eolian/eo_lexer.rl" +#line 665 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" params {"); + toknz->current_nesting++; + toknz->tmp.params = &(toknz->tmp.meth->params); + { toknz->cs = 304; goto _again;} }} break; case 79: -#line 648 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} +#line 737 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;} break; case 80: -#line 639 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} +#line 738 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;} break; case 81: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ +#line 700 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p)+1;{ + Eina_List **l = NULL; + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" }"); + switch (toknz->current_methods_type) { + case METH_CONSTRUCTOR: + l = &toknz->tmp.kls->constructors; + break; + case METH_REGULAR: + l = &toknz->tmp.kls->methods; + break; + default: + ABORT(toknz, "unknown method type %d", toknz->current_methods_type); + } + toknz->tmp.meth->type = toknz->current_methods_type; + *l = eina_list_append(*l, toknz->tmp.meth); + toknz->tmp.meth = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 335; goto _again;} }} break; case 82: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -3837,65 +3664,105 @@ _eof_trans: }} break; case 83: -#line 657 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - if (toknz->tmp.meth->comment != NULL) - ABORT(toknz, "method has already a comment"); - toknz->tmp.meth->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); - INF(" %s", toknz->tmp.meth->comment); - }} +#line 732 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 84: +#line 736 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} + break; + case 85: +#line 700 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + Eina_List **l = NULL; + if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); + INF(" }"); + switch (toknz->current_methods_type) { + case METH_CONSTRUCTOR: + l = &toknz->tmp.kls->constructors; + break; + case METH_REGULAR: + l = &toknz->tmp.kls->methods; + break; + default: + ABORT(toknz, "unknown method type %d", toknz->current_methods_type); + } + toknz->tmp.meth->type = toknz->current_methods_type; + *l = eina_list_append(*l, toknz->tmp.meth); + toknz->tmp.meth = NULL; + toknz->tmp.fscope = FUNC_PUBLIC; + toknz->current_nesting--; + { toknz->cs = 335; goto _again;} + }} + break; + case 86: +#line 394 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 87: +#line 736 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}} + break; + case 88: +#line 394 "lib/eolian/eo_lexer.rl" + {{( toknz->p) = (( toknz->te))-1;}{ + DBG("error[%d]", toknz->cs); + char *s, *d; + char buf[BUFSIZE]; + for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) + { + if ((*s == '\r') || (*s == '\n')) + break; + *d++ = *s; + } + *d = '\0'; + ERR("error n:%d l:%d c:'%c': %s", + toknz->current_nesting, toknz->current_line, *( toknz->p), buf); + toknz->cs = eo_tokenizer_error; + {( toknz->p)++; goto _out; } /* necessary to stop scanners */ + }} + break; + case 89: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 85: -#line 665 "lib/eolian/eo_lexer.rl" + case 90: +#line 745 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" params {"); + INF(" %s {", toknz->tmp.meth->name); toknz->current_nesting++; - toknz->tmp.params = &(toknz->tmp.meth->params); - { toknz->cs = 352; goto _again;} + { toknz->cs = 325; goto _again;} }} break; - case 86: -#line 737 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;} - break; - case 87: -#line 738 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;} - break; - case 88: -#line 700 "lib/eolian/eo_lexer.rl" + case 91: +#line 762 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ - Eina_List **l = NULL; - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" }"); - switch (toknz->current_methods_type) { - case METH_CONSTRUCTOR: - l = &toknz->tmp.kls->constructors; - break; - case METH_REGULAR: - l = &toknz->tmp.kls->methods; - break; - default: - ABORT(toknz, "unknown method type %d", toknz->current_methods_type); - } - toknz->tmp.meth->type = toknz->current_methods_type; - *l = eina_list_append(*l, toknz->tmp.meth); - toknz->tmp.meth = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; toknz->current_nesting--; - { toknz->cs = 383; goto _again;} + { toknz->cs = 341; goto _again;} }} break; - case 89: + case 92: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -3912,66 +3779,24 @@ _eof_trans: toknz->current_nesting, toknz->current_line, *( toknz->p), buf); toknz->cs = eo_tokenizer_error; {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 90: -#line 732 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 91: -#line 736 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 92: -#line 700 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - Eina_List **l = NULL; - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" }"); - switch (toknz->current_methods_type) { - case METH_CONSTRUCTOR: - l = &toknz->tmp.kls->constructors; - break; - case METH_REGULAR: - l = &toknz->tmp.kls->methods; - break; - default: - ABORT(toknz, "unknown method type %d", toknz->current_methods_type); - } - toknz->tmp.meth->type = toknz->current_methods_type; - *l = eina_list_append(*l, toknz->tmp.meth); - toknz->tmp.meth = NULL; - toknz->tmp.fscope = FUNC_PUBLIC; - toknz->current_nesting--; - { toknz->cs = 383; goto _again;} }} break; case 93: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} +#line 772 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;} break; case 94: -#line 736 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}} +#line 762 "lib/eolian/eo_lexer.rl" + { toknz->te = ( toknz->p);( toknz->p)--;{ + INF(" }"); + toknz->current_methods_type = METH_TYPE_LAST; + toknz->current_nesting--; + { toknz->cs = 341; goto _again;} + }} break; case 95: #line 394 "lib/eolian/eo_lexer.rl" - {{( toknz->p) = (( toknz->te))-1;}{ + { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); char *s, *d; char buf[BUFSIZE]; @@ -3989,82 +3814,6 @@ _eof_trans: }} break; case 96: -#line 385 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("comment[%d] line%03d:%03d", toknz->cs, - toknz->saved.line, toknz->current_line); - }} - break; - case 97: -#line 745 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - if (!toknz->tmp.meth) ABORT(toknz, "No method!!!"); - INF(" %s {", toknz->tmp.meth->name); - toknz->current_nesting++; - { toknz->cs = 373; goto _again;} - }} - break; - case 98: -#line 762 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} - break; - case 99: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p)+1;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 100: -#line 772 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;} - break; - case 101: -#line 762 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - INF(" }"); - toknz->current_methods_type = METH_TYPE_LAST; - toknz->current_nesting--; - { toknz->cs = 389; goto _again;} - }} - break; - case 102: -#line 394 "lib/eolian/eo_lexer.rl" - { toknz->te = ( toknz->p);( toknz->p)--;{ - DBG("error[%d]", toknz->cs); - char *s, *d; - char buf[BUFSIZE]; - for (s = ( toknz->p), d = buf; (s <= toknz->pe); s++) - { - if ((*s == '\r') || (*s == '\n')) - break; - *d++ = *s; - } - *d = '\0'; - ERR("error n:%d l:%d c:'%c': %s", - toknz->current_nesting, toknz->current_line, *( toknz->p), buf); - toknz->cs = eo_tokenizer_error; - {( toknz->p)++; goto _out; } /* necessary to stop scanners */ - }} - break; - case 103: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -4083,7 +3832,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 104: + case 97: #line 781 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -4092,53 +3841,53 @@ _eof_trans: toknz->tmp.kls->comment = _eo_tokenizer_token_get(toknz, ( toknz->p)-1); }} break; - case 105: + case 98: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 106: + case 99: #line 799 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 107: + case 100: #line 802 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ }} break; - case 108: + case 101: #line 805 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" constructors {"); toknz->current_methods_type = METH_CONSTRUCTOR; toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 383; goto _again;} + { toknz->cs = 335; goto _again;} }} break; - case 109: + case 102: #line 813 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" properties {"); toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 367; goto _again;} + { toknz->cs = 319; goto _again;} }} break; - case 110: + case 103: #line 820 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ INF(" begin methods"); toknz->current_methods_type = METH_REGULAR; toknz->tmp.fscope = FUNC_PUBLIC; toknz->current_nesting++; - { toknz->cs = 383; goto _again;} + { toknz->cs = 335; goto _again;} }} break; - case 111: + case 104: #line 828 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -4146,10 +3895,10 @@ _eof_trans: toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 336; goto _again;} + { toknz->cs = 288; goto _again;} }} break; - case 112: + case 105: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -4168,33 +3917,33 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 113: -#line 982 "lib/eolian/eo_lexer.rl" + case 106: +#line 909 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 114: -#line 985 "lib/eolian/eo_lexer.rl" + case 107: +#line 912 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 115: -#line 986 "lib/eolian/eo_lexer.rl" + case 108: +#line 913 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 116: -#line 987 "lib/eolian/eo_lexer.rl" + case 109: +#line 914 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 117: + case 110: #line 799 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 118: + case 111: #line 802 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ }} break; - case 119: + case 112: #line 828 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); @@ -4202,10 +3951,10 @@ _eof_trans: toknz->classes = eina_list_append(toknz->classes, toknz->tmp.kls); toknz->tmp.kls = NULL; toknz->current_nesting--; - { toknz->cs = 336; goto _again;} + { toknz->cs = 288; goto _again;} }} break; - case 120: + case 113: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -4224,7 +3973,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 121: + case 114: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -4243,23 +3992,23 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 122: + case 115: #line 385 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("comment[%d] line%03d:%03d", toknz->cs, toknz->saved.line, toknz->current_line); }} break; - case 123: -#line 999 "lib/eolian/eo_lexer.rl" + case 116: +#line 926 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ if (!toknz->tmp.kls) ABORT(toknz, "No class!!!"); INF("begin class: %s", toknz->tmp.kls->name); toknz->current_nesting++; - { toknz->cs = 389; goto _again;} + { toknz->cs = 341; goto _again;} }} break; - case 124: + case 117: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p)+1;{ DBG("error[%d]", toknz->cs); @@ -4278,11 +4027,11 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 125: -#line 1034 "lib/eolian/eo_lexer.rl" + case 118: +#line 961 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;} break; - case 126: + case 119: #line 394 "lib/eolian/eo_lexer.rl" { toknz->te = ( toknz->p);( toknz->p)--;{ DBG("error[%d]", toknz->cs); @@ -4301,7 +4050,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; - case 127: + case 120: #line 394 "lib/eolian/eo_lexer.rl" {{( toknz->p) = (( toknz->te))-1;}{ DBG("error[%d]", toknz->cs); @@ -4320,7 +4069,7 @@ _eof_trans: {( toknz->p)++; goto _out; } /* necessary to stop scanners */ }} break; -#line 4324 "lib/eolian/eo_lexer.c" +#line 4073 "lib/eolian/eo_lexer.c" } } @@ -4329,11 +4078,11 @@ _again: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 40: + case 33: #line 1 "NONE" { toknz->ts = 0;} break; -#line 4337 "lib/eolian/eo_lexer.c" +#line 4086 "lib/eolian/eo_lexer.c" } } @@ -4351,12 +4100,12 @@ _again: _out: {} } -#line 1143 "lib/eolian/eo_lexer.rl" +#line 1070 "lib/eolian/eo_lexer.rl" if ( toknz->cs == -#line 4358 "lib/eolian/eo_lexer.c" +#line 4107 "lib/eolian/eo_lexer.c" -1 -#line 1144 "lib/eolian/eo_lexer.rl" +#line 1071 "lib/eolian/eo_lexer.rl" ) { ERR("%s: wrong termination", source); @@ -4808,21 +4557,6 @@ eo_tokenizer_database_fill(const char *filename) continue; } Eolian_Implement impl_desc = database_implement_new(class, func, ftype); - if (impl->legacy) - { - Eo_Implement_Legacy_Def *eo_leg = impl->legacy; - Eolian_Implement_Legacy leg = database_implement_legacy_add( - impl_desc, eo_leg->function_name); - database_implement_legacy_return_add(leg, eo_leg->ret_type, eo_leg->ret_value); - if (eo_leg->params) - { - Eina_List *itr; - Eo_Implement_Legacy_Param_Def *p; - EINA_LIST_FOREACH(eo_leg->params, itr, p) - database_implement_legacy_param_add(leg, p->eo_name, - p->legacy_name, p->comment); - } - } database_class_implement_add(kls->name, impl_desc); } diff --git a/src/lib/eolian/eo_lexer.rl b/src/lib/eolian/eo_lexer.rl index 81211056b0..475c315590 100644 --- a/src/lib/eolian/eo_lexer.rl +++ b/src/lib/eolian/eo_lexer.rl @@ -892,80 +892,7 @@ _eo_tokenizer_implement_get(Eo_Tokenizer *toknz, char *p) toknz->tmp.kls->implements = eina_list_append(toknz->tmp.kls->implements, toknz->tmp.impl); } - action impl_legacy_create { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (toknz->tmp.impl->legacy) - ABORT(toknz, "Legacy section already allocated for implement item"); - toknz->tmp.impl->legacy = calloc(1, sizeof(Eo_Implement_Legacy_Def)); - } - - action impl_legacy_function_name_store { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->function_name = _eo_tokenizer_token_get(toknz, fpc); - } - - action impl_legacy_eo_param_store { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - toknz->tmp.impl_leg_param = calloc(1, sizeof(Eo_Implement_Legacy_Param_Def)); - toknz->tmp.impl->legacy->params = eina_list_append( - toknz->tmp.impl->legacy->params, toknz->tmp.impl_leg_param); - - toknz->tmp.impl_leg_param->eo_name = _eo_tokenizer_token_get(toknz, fpc); - } - - action impl_legacy_leg_param_store { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->legacy_name = _eo_tokenizer_token_get(toknz, fpc); - } - - action impl_legacy_param_comment_store { - if (!toknz->tmp.impl_leg_param) - ABORT(toknz, "No implement legacy param!!!"); - toknz->tmp.impl_leg_param->comment = _eo_tokenizer_token_get(toknz, fpc-2); - } - - action impl_legacy_return_type_store { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_type= _eo_tokenizer_token_get(toknz, fpc); - } - - action impl_legacy_return_val_store { - if (!toknz->tmp.impl) ABORT(toknz, "No implement!!!"); - if (!toknz->tmp.impl->legacy) - ABORT(toknz, "No legacy section"); - toknz->tmp.impl->legacy->ret_value = _eo_tokenizer_token_get(toknz, fpc); - } - -# legacy legacy_function_name -# { -# params { -# grp: NULL; /*@ in case 'grp' is in Eo but not in legacy, have to give default */ -# file; /*@ in case the 'file' parameter is the same */ -# :index; /*@ in case the param is in legacy but not in Eo */ -# }; -# return Eina_Bool::EINA_TRUE; -# }; - - impl_legacy_param_comment = ws* eo_comment %impl_legacy_param_comment_store; - impl_legacy_eo_param = ident %impl_legacy_eo_param_store; - impl_legacy_leg_param = ws* colon ws* ident %impl_legacy_leg_param_store ignore*; - impl_legacy_param = impl_legacy_eo_param? ws* impl_legacy_leg_param? end_statement impl_legacy_param_comment? ignore*; - impl_legacy_params = impl_legacy_param+; - - impl_legacy_return = 'return' ws+ ident %impl_legacy_return_type_store '::' ident %impl_legacy_return_val_store end_statement ignore*; - - impl_legacy_body = 'params' ignore* begin_def ignore* impl_legacy_params ignore* end_def ignore* impl_legacy_return? ignore*; - - impl_legacy_function_name = ident %impl_legacy_function_name_store; - impl_legacy_token = 'legacy' %impl_legacy_create; - impl_body = impl_legacy_token ws* impl_legacy_function_name? ignore* (end_statement | (begin_def ignore* impl_legacy_body ignore* end_def)) ignore*; -# class::func ; or { ... } - impl_it = class_meth %impl_meth_store ignore* (end_statement | (begin_def ignore* impl_body ignore* end_def)) ignore*; + impl_it = class_meth %impl_meth_store ignore* end_statement ignore*; # implements { ... } implements = 'implements' ignore* begin_def ignore* impl_it* end_def; @@ -1592,21 +1519,6 @@ eo_tokenizer_database_fill(const char *filename) continue; } Eolian_Implement impl_desc = database_implement_new(class, func, ftype); - if (impl->legacy) - { - Eo_Implement_Legacy_Def *eo_leg = impl->legacy; - Eolian_Implement_Legacy leg = database_implement_legacy_add( - impl_desc, eo_leg->function_name); - database_implement_legacy_return_add(leg, eo_leg->ret_type, eo_leg->ret_value); - if (eo_leg->params) - { - Eina_List *itr; - Eo_Implement_Legacy_Param_Def *p; - EINA_LIST_FOREACH(eo_leg->params, itr, p) - database_implement_legacy_param_add(leg, p->eo_name, - p->legacy_name, p->comment); - } - } database_class_implement_add(kls->name, impl_desc); } diff --git a/src/lib/eolian/eolian_database.c b/src/lib/eolian/eolian_database.c index 851e3ad3d3..fe22c1df29 100644 --- a/src/lib/eolian/eolian_database.c +++ b/src/lib/eolian/eolian_database.c @@ -486,80 +486,6 @@ eolian_implement_information_get(Eolian_Implement impl, const char **class_name, return EINA_TRUE; } -Eolian_Implement_Legacy -database_implement_legacy_add(Eolian_Implement impl, const char *legacy_function_name) -{ - _Implement_Desc *_impl = (_Implement_Desc *)impl; - EINA_SAFETY_ON_NULL_RETURN_VAL(_impl, NULL); - _impl->leg_desc = calloc(1, sizeof(_Implement_Legacy_Desc)); - _Implement_Legacy_Desc *leg_desc = (_Implement_Legacy_Desc *)_impl->leg_desc; - if (leg_desc && legacy_function_name) leg_desc->legacy_function_name = legacy_function_name; - return _impl->leg_desc; -} - -Eolian_Implement_Legacy_Parameter -database_implement_legacy_param_add(Eolian_Implement_Legacy leg, - Eina_Stringshare *eo_param, Eina_Stringshare *leg_param, - Eina_Stringshare *comment) -{ - _Implement_Legacy_Desc *_leg = (_Implement_Legacy_Desc *)leg; - EINA_SAFETY_ON_NULL_RETURN_VAL(_leg, NULL); - - _Implement_Legacy_Param *param = calloc(1, sizeof(_Implement_Legacy_Param)); - param->eo_param = eo_param; - param->leg_param = leg_param; - param->comment = comment; - - _leg->params = eina_list_append(_leg->params, param); - return (Eolian_Implement_Legacy_Parameter) param; -} - -EAPI Eina_Bool -eolian_implement_legacy_param_info_get(Eolian_Implement_Legacy_Parameter param, - Eina_Stringshare **eo_param, Eina_Stringshare **leg_param, - Eina_Stringshare **comment) -{ - _Implement_Legacy_Param *_param = (_Implement_Legacy_Param *)param; - EINA_SAFETY_ON_NULL_RETURN_VAL(_param, EINA_FALSE); - - if (eo_param) *eo_param = _param->eo_param; - if (leg_param) *leg_param = _param->leg_param; - if (comment) *comment = _param->comment; - return EINA_TRUE; -} - -Eina_Bool -database_implement_legacy_return_add(Eolian_Implement_Legacy leg, Eina_Stringshare *ret_type, Eina_Stringshare *ret_value) -{ - _Implement_Legacy_Desc *_leg = (_Implement_Legacy_Desc *)leg; - EINA_SAFETY_ON_NULL_RETURN_VAL(_leg, EINA_FALSE); - _leg->ret_type = ret_type; - _leg->ret_value = ret_value; - return EINA_TRUE; -} - -EAPI Eolian_Implement_Legacy -eolian_implement_legacy_desc_get(Eolian_Implement impl) -{ - _Implement_Desc *_impl = (_Implement_Desc *)impl; - EINA_SAFETY_ON_NULL_RETURN_VAL(_impl, NULL); - return (Eolian_Implement_Legacy) (_impl->leg_desc); -} - -EAPI Eina_Bool -eolian_implement_legacy_information_get(const Eolian_Implement_Legacy leg_desc, - Eina_Stringshare **leg_func_name, Eina_List **params, - Eina_Stringshare **ret_type, Eina_Stringshare **ret_value) -{ - _Implement_Legacy_Desc *_leg = (_Implement_Legacy_Desc *)leg_desc; - EINA_SAFETY_ON_NULL_RETURN_VAL(_leg, EINA_FALSE); - if (leg_func_name) *leg_func_name = _leg->legacy_function_name; - if (params) *params = _leg->params; - if (ret_type) *ret_type = _leg->ret_type; - if (ret_value) *ret_value = _leg->ret_value; - return EINA_TRUE; -} - EAPI Eolian_Function eolian_class_function_find_by_name(const char *class_name, const char *func_name, Eolian_Function_Type f_type) { @@ -1101,29 +1027,6 @@ _implements_print(Eolian_Implement impl, int nb_spaces) return; } printf("%*s <%s :: %s> <%s>\n", nb_spaces + 5, "", cl, fn, t); - Eolian_Implement_Legacy leg_desc = eolian_implement_legacy_desc_get(impl); - if (leg_desc) - { - Eina_Stringshare *func_name, *ret_type, *ret_value; - Eina_List *params = NULL; - eolian_implement_legacy_information_get(leg_desc, &func_name, ¶ms, &ret_type, &ret_value); - printf("%*s Legacy\n", nb_spaces + 8, ""); - if (func_name) printf("%*s Function name: %s\n", nb_spaces + 11, "", func_name); - if (ret_type && ret_value) - printf("%*s Return %s::%s\n", nb_spaces + 11, "", ret_type, ret_value); - if (params) - { - printf("%*s Params:\n", nb_spaces + 11, ""); - Eina_List *itr; - Eolian_Implement_Legacy_Parameter p; - EINA_LIST_FOREACH(params, itr, p) - { - Eina_Stringshare *eo_param, *leg_param, *comment; - eolian_implement_legacy_param_info_get(p, &eo_param, &leg_param, &comment); - printf("%*s %s -> %s <%s>\n", nb_spaces + 14, "", eo_param, leg_param, comment); - } - } - } } static void diff --git a/src/lib/eolian/eolian_database.h b/src/lib/eolian/eolian_database.h index 82e9a3a619..cac78d2c6b 100644 --- a/src/lib/eolian/eolian_database.h +++ b/src/lib/eolian/eolian_database.h @@ -116,17 +116,6 @@ database_function_scope_set(Eolian_Function function_id, Eolian_Function_Scope s Eolian_Implement database_implement_new(const char *class_name, const char *func_name, Eolian_Function_Type type); -Eolian_Implement_Legacy -database_implement_legacy_add(Eolian_Implement impl, const char *legacy_func_name); - -Eolian_Implement_Legacy_Parameter -database_implement_legacy_param_add(Eolian_Implement_Legacy leg, - Eina_Stringshare *eo_param, Eina_Stringshare *leg_param, - Eina_Stringshare *comment); - -Eina_Bool -database_implement_legacy_return_add(Eolian_Implement_Legacy leg, Eina_Stringshare *ret_type, Eina_Stringshare *ret_value); - Eina_Bool database_class_implement_add(const char *class_name, Eolian_Implement impl_id);