Dave Halter
|
489ea8fc83
|
Replace set_parser with direct ParserNode instance calls.
|
2015-02-23 13:10:40 +01:00 |
|
Dave Halter
|
2fcb1b9b65
|
Fast parser fix.
|
2015-02-23 01:00:17 +01:00 |
|
Dave Halter
|
3a5b2d396e
|
Failed statements should not lead to parser fails.
|
2015-02-22 20:29:22 +01:00 |
|
Dave Halter
|
3ec96b25cc
|
Issue with backslashes again in the fast parser.
|
2015-02-21 18:07:21 +01:00 |
|
Dave Halter
|
0b5a509e83
|
Small correction: mixed up a re.match and re.search.
|
2015-02-20 00:48:05 +01:00 |
|
Dave Halter
|
ce96af5e04
|
Fix an issue with open parentheses and function definitions right after. The fast parser should behave like the normal one and just ignore the open brackets.
|
2015-02-19 11:02:11 +01:00 |
|
Dave Halter
|
9d048623dd
|
Delete the old and unused MultiLevelStopIteration exception.
|
2015-02-19 01:43:43 +01:00 |
|
Dave Halter
|
0e73bf7d80
|
Account for code parts that were not parsed in the fast parser.
|
2015-02-19 01:42:13 +01:00 |
|
Dave Halter
|
39bf9f426b
|
Handle backslash escaping.
|
2015-02-18 17:32:34 +01:00 |
|
Dave Halter
|
595da50ab8
|
The fast parser splitting now also checks for parentheses levels, because without that, sometimes we split in very strange positions, while ignoring others.
|
2015-02-18 13:49:03 +01:00 |
|
Dave Halter
|
38e26892f2
|
The fast parser doesn't work with open parentheses properly, document that.
|
2015-02-18 12:50:26 +01:00 |
|
Dave Halter
|
cefd76e5d1
|
Testing open parentheses in the fast parser.
|
2015-02-17 17:26:00 +01:00 |
|
Dave Halter
|
506d602795
|
Fix multi line param issues in the fast parser.
|
2015-02-17 15:24:49 +01:00 |
|
Dave Halter
|
7663703989
|
Fix issues with multi line for loops in the fast parser.
|
2015-02-17 14:57:00 +01:00 |
|
Dave Halter
|
4d9608ea6f
|
Check more precisely for flow keywords.
|
2015-02-16 16:04:48 +01:00 |
|
Dave Halter
|
e1c28d2c3f
|
variables starting with 'class' and 'def' should not slow down the parser, changed the check to 'class ' and 'def '.
|
2015-02-16 10:08:22 +01:00 |
|
Dave Halter
|
3680784234
|
Add another for in one line test for the fast parser.
|
2015-02-15 20:28:59 +01:00 |
|
Dave Halter
|
db31e0e37d
|
The fast parser works now faster in case of for flows with a simple_stmt after.
|
2015-02-14 18:57:04 +01:00 |
|
Dave Halter
|
a3b32729a7
|
Test for an issue with for loops and a statement on the same line. (fast parser)
|
2015-02-14 16:27:04 +01:00 |
|
Dave Halter
|
4613a810a5
|
Some small refactorings to the names_dict/deep_ast_copy logic.
|
2015-02-12 13:24:08 +01:00 |
|
Dave Halter
|
774b3d5ce8
|
Python 2 compatibility.
|
2015-02-12 11:36:36 +01:00 |
|
Dave Halter
|
a8d3a9ab42
|
Remove old deep_ast_copy code.
|
2015-02-12 11:24:17 +01:00 |
|
Dave Halter
|
bcf6be0636
|
Radically rewrote deep_ast_copy.
|
2015-02-12 02:25:54 +01:00 |
|
Dave Halter
|
a12f259a0f
|
Actually remove check_first from deep_ast_copy.
|
2015-02-11 14:47:28 +01:00 |
|
Dave Halter
|
315c687048
|
Remove the need for the check_first param in deep_ast_copy.
|
2015-02-11 14:46:51 +01:00 |
|
Dave Halter
|
bc722a70f2
|
Simplify deep_ast_copy.
|
2015-02-11 02:16:57 +01:00 |
|
Dave Halter
|
6e5ba3de87
|
Fix remaining issue siwh the Param refactoring.
|
2015-02-11 01:40:18 +01:00 |
|
Dave Halter
|
cdbe26786a
|
Trying to get ird of the weird param generation in the parser tree.
|
2015-02-10 15:49:26 +01:00 |
|
Dave Halter
|
8775d90173
|
Merge the master branch into the dev branch.
|
2015-02-09 14:41:41 +01:00 |
|
Dave Halter
|
07156b427c
|
Fix some compatibilty issues in the test suite for Python 2.7.
|
2015-02-09 14:15:25 +01:00 |
|
Dave Halter
|
28d3ba6c04
|
Fix a test about regex goto, don't know how that one even worked in the first place.
|
2015-02-09 12:35:20 +01:00 |
|
Dave Halter
|
a095f8d9e0
|
Replace some isinstance checks in the parser tree with .type checks.
|
2015-02-09 12:27:29 +01:00 |
|
Dave Halter
|
a9a3387cb0
|
Refactor user scope search.
|
2015-02-05 21:52:57 +01:00 |
|
Dave Halter
|
8125d5f562
|
Remove asserts and calculate them dynamically.
|
2015-02-05 20:16:55 +01:00 |
|
Dave Halter
|
0a3797cf6e
|
Small refactorings.
|
2015-02-05 19:47:26 +01:00 |
|
Dave Halter
|
2dd08594fc
|
Simplify the indent calculation in the fast parser.
|
2015-02-05 14:37:24 +01:00 |
|
Dave Halter
|
abe6c8934c
|
Update the parser pickling protocol version.
|
2015-02-05 14:19:22 +01:00 |
|
Dave Halter
|
d0f1fd5267
|
Rename Simple -> BaseNode.
|
2015-02-05 14:18:30 +01:00 |
|
Dave Halter
|
0c1bbf78e2
|
Rename SubModule to Module, because that's a more fitting description. There were reasons for the name before the new fast parser, but those don't exist anymore.
|
2015-02-05 14:16:43 +01:00 |
|
Dave Halter
|
c689573b0b
|
Removed the line_offset from tokenize, we have better ways to modify positions, now.
|
2015-02-05 14:00:58 +01:00 |
|
Dave Halter
|
59cf1bce5d
|
Delete legacy code from the fast parser.
|
2015-02-05 13:47:35 +01:00 |
|
Dave Halter
|
4ace58e29e
|
Make get_statement_for_position faster.
|
2015-02-05 13:35:43 +01:00 |
|
Dave Halter
|
a77ecdbed6
|
Remove param from get_statement_for_position.
|
2015-02-05 12:28:55 +01:00 |
|
Dave Halter
|
2d9c644ab6
|
Fixed some minor mocking differences in Python 2 and 3.
|
2015-02-05 01:25:53 +01:00 |
|
Dave Halter
|
109fdc53e0
|
Fix the remaining fast parser issues.
|
2015-02-05 01:13:00 +01:00 |
|
Dave Halter
|
b57ee880af
|
Remove assertEqual from tokenize tests, we can do it with just assert, py.test converts all of that automatically.
|
2015-02-05 00:48:40 +01:00 |
|
Dave Halter
|
fdfe17ada5
|
Import the token IDs directly, this way we minimize lookups.
|
2015-02-05 00:44:01 +01:00 |
|
Dave Halter
|
c6b818c504
|
Changed a tokenize test to match the current intended behavior of the tokenizer.
|
2015-02-05 00:43:25 +01:00 |
|
Dave Halter
|
3a4235eb33
|
The interpreter is not using the fast parser anymore.
|
2015-02-05 00:28:54 +01:00 |
|
Dave Halter
|
dce952aec6
|
Fix an issue with omited dedents in the parser.
|
2015-02-05 00:11:12 +01:00 |
|
Dave Halter
|
e1c623d3f3
|
Python 2 compatibility.
|
2015-02-04 17:09:18 +01:00 |
|
Dave Halter
|
e23e354fe8
|
Simplified the line splitting and with that a few other things in the fast parser.
|
2015-02-03 22:22:57 +01:00 |
|
Dave Halter
|
66dfa59286
|
Fix some endmarker prefix issues in the fast parser.
|
2015-02-03 22:09:55 +01:00 |
|
Dave Halter
|
6cdfecb541
|
Fix a number of issues in the fast parser around functions with only one statement (no suite) and wrong indentations).
|
2015-02-02 15:03:57 +01:00 |
|
Dave Halter
|
f9fe6b47eb
|
Fix error statement stacks positions.
|
2015-02-02 10:43:47 +01:00 |
|
Dave Halter
|
a4bd412801
|
Fix an issue with the positions of InstanceNames that used the original position_modifier.
|
2015-02-02 02:29:39 +01:00 |
|
Dave Halter
|
c58cdbbf9b
|
Fix an issue that comes from a combination of property/__slots__/pickle
|
2015-02-02 00:45:17 +01:00 |
|
Dave Halter
|
e913872192
|
Merged the tokenize is_identifier changes.
|
2015-02-01 20:32:01 +01:00 |
|
Dave Halter
|
9a0f1363e3
|
Start removing the print statements that were used for debugging.
|
2015-02-01 02:32:52 +01:00 |
|
Dave Halter
|
bc118e8047
|
Simplify the fast parser tokenizer more. Now it is more readable and less buggy (+bugfixes).
|
2015-01-31 20:09:44 +01:00 |
|
Dave Halter
|
1826f432c8
|
Fix an issue in the fast parser splitting.
|
2015-01-30 15:17:38 +01:00 |
|
Dave Halter
|
413da3b790
|
Remove the line_offset calculation. We can now also remove it from tokenize. With the position_modifier we have enough tools to change a position, we don't need to do that in tokenize.py.
|
2015-01-29 17:57:01 +01:00 |
|
Dave Halter
|
a3cdec819e
|
Fix the prefix in tokenize, which was the wrong way around.
|
2015-01-29 17:10:00 +01:00 |
|
Dave Halter
|
cf1b2ff54b
|
Function tests now pass with the fast parser.
|
2015-01-29 15:47:38 +01:00 |
|
Dave Halter
|
a221eee02c
|
Fix more issues in the fast parser.
|
2015-01-29 15:38:38 +01:00 |
|
Dave Halter
|
0a537c05c4
|
Fix an issue with Function/Flow combination in the fast parser.
|
2015-01-29 02:24:11 +01:00 |
|
Dave Halter
|
dde0e9c7c6
|
Fix for loop issues in the fast parser.
|
2015-01-29 01:36:16 +01:00 |
|
Dave Halter
|
e412694fa2
|
Fix issues with flows in the fast parser.
|
2015-01-28 17:06:18 +01:00 |
|
Dave Halter
|
b8c63f366c
|
FastModule seems to be compatible now with the normal Module, because it inherits from it and makes some minor modifications in some cases.
|
2015-01-28 15:11:53 +01:00 |
|
Dave Halter
|
c7563470b1
|
We don't need set_global_names, just set the attribute directly.
|
2015-01-28 15:00:17 +01:00 |
|
Dave Halter
|
d0589430bb
|
FastModule should inherit from SubModule, because it has almost all the same properties.
|
2015-01-28 14:59:00 +01:00 |
|
Dave Halter
|
6ec89e6785
|
Fix issues with flows.
|
2015-01-28 13:03:57 +01:00 |
|
Dave Halter
|
5e8f8f7a8d
|
Fix issues with error correction / newline correction.
|
2015-01-27 12:24:54 +01:00 |
|
Dave Halter
|
62e45aa42b
|
Fix issues with the new newline end_pos positions.
|
2015-01-27 02:21:05 +01:00 |
|
Dave Halter
|
4a07f97f10
|
Reenable a few get_code tests.
|
2015-01-27 01:19:09 +01:00 |
|
Dave Halter
|
88a3e25814
|
Fix newline stuff for empty parsers.
|
2015-01-27 01:15:39 +01:00 |
|
Dave Halter
|
39e869d146
|
Test added newline module end_pos as well.
|
2015-01-26 22:02:11 +01:00 |
|
Dave Halter
|
cdae250b36
|
code -> source and also care for added newlines in the fast parser.
|
2015-01-26 22:01:39 +01:00 |
|
Dave Halter
|
07c60d7ff6
|
Fix DEDENT issues in _remove_newline.
|
2015-01-26 21:17:50 +01:00 |
|
Dave Halter
|
61e2bba380
|
Tests and implementation to remove the last newline again in the parser tree, to be able to exactly reproduce the parser input.
|
2015-01-26 21:07:14 +01:00 |
|
Dave Halter
|
e5d265e845
|
Add a method Leaf.get_previous, to get previous leafs.
|
2015-01-26 21:02:56 +01:00 |
|
Dave Halter
|
a8943b8a80
|
Get the position modifiers right.
|
2015-01-24 20:42:28 +01:00 |
|
Dave Halter
|
446f5b9018
|
Fix issues with the right count of parsers used.
|
2015-01-24 20:19:03 +01:00 |
|
Dave Halter
|
4d6afd3c99
|
Fix fast parser tests.
|
2015-01-24 00:06:16 +01:00 |
|
Dave Halter
|
8569651bf4
|
Fast parser simplifications and bug fixes.
|
2015-01-21 18:34:22 +01:00 |
|
Dave Halter
|
91ab1d0ecd
|
Fix an issue in the fast parser that caused stuff to be parsed always.
|
2015-01-21 02:03:06 +01:00 |
|
Dave Halter
|
7188105dc7
|
The fast parser is now in a more readable shape.
|
2015-01-19 16:21:25 +01:00 |
|
Dave Halter
|
ce793b1066
|
Trying to restructure the fast parser.
|
2015-01-19 14:49:44 +01:00 |
|
Dave Halter
|
d6b3b76d26
|
First fast parser version that actually let a test pass.
|
2015-01-19 00:39:51 +01:00 |
|
Dave Halter
|
add0cafbf1
|
Merge pull request #530 from felipeacsi/arch-installation
Updated Arch Linux installation
|
2015-01-17 13:50:49 +01:00 |
|
Dave Halter
|
01c209dc00
|
MergedNamesDicts for the parser.
|
2015-01-16 15:25:58 +01:00 |
|
Dave Halter
|
e477fab856
|
Playing with the fast parser implementation.
|
2015-01-16 15:23:49 +01:00 |
|
Dave Halter
|
86391268a7
|
Merge pull request #528 from KenetJervet/parser
Fixed issue #526.
|
2015-01-16 13:03:56 +01:00 |
|
Dave Halter
|
cc7483498c
|
Start using the position modifier.
|
2015-01-15 14:18:22 +01:00 |
|
Dave Halter
|
cf223a71f5
|
Add a position modifier for the fast parser. Not yet in use though.
|
2015-01-15 13:57:56 +01:00 |
|
Dave Halter
|
c963706418
|
Delete legacy logic.
|
2015-01-15 02:19:48 +01:00 |
|
Dave Halter
|
e82d51e161
|
Correct a path in memory check.
|
2015-01-15 02:03:26 +01:00 |
|
Dave Halter
|
95b518e9fc
|
Use the Python 3.4 parser for docstring types.
We had to switch, because Ellipsis was otherwise not parseable.
|
2015-01-13 13:17:21 +01:00 |
|
Dave Halter
|
e6b9111749
|
Python 2.7 compatibility.
|
2015-01-13 02:12:49 +01:00 |
|
Dave Halter
|
cc64265187
|
Grammar modifications so that the Python2.7 grammar looks more like the Python 3.4 grammar.
|
2015-01-13 01:05:13 +01:00 |
|