Hackerpilot
|
79bfe7af4e
|
More progress. Cleaned up grammar based on the fact that the semicolon is no longer a valid statement. Added unit tests. Implemented some more parsing methods
|
2013-06-09 03:10:52 +00:00 |
Hackerpilot
|
4fdcccc8bc
|
More progress on the parser
|
2013-06-08 22:51:47 -07:00 |
Hackerpilot
|
e7d78c214c
|
__parameters is not a rule
|
2013-06-05 01:00:07 +00:00 |
Hackerpilot
|
6aa3fcfd02
|
Finished grammar DDoc
|
2013-06-05 00:46:51 +00:00 |
Hackerpilot
|
90b6d37c5d
|
MOAR PARSING STUFF
|
2013-06-03 00:50:13 +00:00 |
Hackerpilot
|
0e58854fa9
|
Lots of DDoc changes, some parser work
|
2013-06-01 17:51:45 +00:00 |
Hackerpilot
|
4ad043085a
|
Parser progress
|
2013-06-01 12:15:25 -07:00 |
Hackerpilot
|
8db927a8fd
|
Progress on the parser
|
2013-05-30 19:56:55 -07:00 |
Hackerpilot
|
e405a1ad2b
|
Minor cleanup on lexer. More work on the parser and AST
|
2013-05-30 01:12:10 +00:00 |
Hackerpilot
|
8a7c962d16
|
Parser implementation work
|
2013-05-22 23:50:23 -07:00 |
Hackerpilot
|
35e5ad63c1
|
Filled out list of parsing functions based on new AST
|
2013-05-20 01:49:55 +00:00 |
Hackerpilot
|
2a9dfaf3f5
|
AST classes are now complete. Will likely be refactored later.
|
2013-05-20 00:53:43 +00:00 |
Hackerpilot
|
a2e0a3bfe2
|
More progress on the AST clasess.
|
2013-05-19 12:26:34 -07:00 |
Hackerpilot
|
e5c7129803
|
Fixed compile error
|
2013-05-11 14:18:15 +00:00 |
Hackerpilot
|
548996d1e5
|
Updated to include new special tokens
|
2013-05-05 12:45:25 -07:00 |
Hackerpilot
|
45ba5570e7
|
Updated listing of special tokens. Began rewrite of AST based on new grammar.
|
2013-04-22 01:00:24 -07:00 |
Hackerpilot
|
281751e52e
|
ast work
|
2013-03-30 22:59:22 -07:00 |
Hackerpilot
|
41ec752e86
|
Merge branch 'range-based-lexer' of https://github.com/Hackerpilot/Dscanner into range-based-lexer
|
2013-03-24 01:19:49 +00:00 |
Hackerpilot
|
490d632a29
|
added messagepack
|
2013-03-24 01:19:45 +00:00 |
qchikara
|
ec57809ec9
|
Fix: Token#opEquals(TokenType) never returns false
opEquals(TokenType) never returns false because its argument shadows the corresponding field.
|
2013-03-21 01:44:17 +09:00 |
Dmitry Olshansky
|
8d8d72dfe5
|
fix a horrible perf mistake in genCaseTrie
|
2013-03-18 15:23:57 +04:00 |
Dmitry Olshansky
|
ba5d9d6775
|
shift token type<->string mapping to CTFE/meta
|
2013-03-18 15:06:11 +04:00 |
Hackerpilot
|
fdd4e3060e
|
merged
|
2013-03-10 00:58:20 -08:00 |
Hackerpilot
|
dc81410008
|
whitespace
|
2013-03-10 00:41:54 -08:00 |
Dmitry Olshansky
|
a692c0c6c9
|
a bit of tuning and it beats fixed-sized table by very slim margin
|
2013-03-08 22:09:45 +04:00 |
Dmitry Olshansky
|
e5810db4e2
|
actually use the power-of-two assumption, brings it on par with load factor of 0.5
|
2013-03-08 14:16:14 +04:00 |
Dmitry Olshansky
|
b9c1928746
|
add rehashing and simpler hash-table (sadly too slow)
|
2013-03-08 14:04:32 +04:00 |
Dmitry Olshansky
|
510b7ca47e
|
actually there could be interior pointers once string cache is out of scope
|
2013-03-05 23:43:26 +04:00 |
Dmitry Olshansky
|
431dd3c3d2
|
kill foreach opApply iteration (too slow)
|
2013-03-05 23:17:40 +04:00 |
Hackerpilot
|
c1fcef1873
|
merged
|
2013-03-04 02:05:18 +00:00 |
Hackerpilot
|
3c8b5c4bc4
|
fix compile errors by COMMENTING OUT EVERYTHING
|
2013-03-04 02:01:27 +00:00 |
Hackerpilot
|
c867b86598
|
More work on core features
|
2013-03-03 23:50:52 +00:00 |
Hackerpilot
|
bd54c84e3d
|
Ddoc / indentation fixes. Also moved the lexer source code below the "private:" line
|
2013-02-28 11:21:37 -08:00 |
Hackerpilot
|
1dfeb281d9
|
Merge branch 'range-based-lexer' of https://github.com/Hackerpilot/Dscanner into range-based-lexer
|
2013-02-27 21:01:49 +00:00 |
Hackerpilot
|
16ac572ad5
|
token rename
|
2013-02-27 21:01:46 +00:00 |
Dmitry Olshansky
|
a4a35e88bc
|
make filter work on case by case basis instead of on every token
|
2013-02-27 23:45:56 +04:00 |
Dmitry Olshansky
|
eb422f65d1
|
eliminating more of extra ops from the common path
|
2013-02-27 23:12:46 +04:00 |
Hackerpilot
|
9b0d3d78d1
|
Merge branch 'range-based-lexer' of https://github.com/Hackerpilot/Dscanner into range-based-lexer
|
2013-02-22 22:24:26 +00:00 |
Hackerpilot
|
bfd6c55de3
|
Renamed tokens for consistency
|
2013-02-22 22:24:23 +00:00 |
Dmitry Olshansky
|
94d3d21588
|
first steps towards leaner common path in Lexer.advance
|
2013-02-23 01:30:41 +04:00 |
Dmitry Olshansky
|
0c97b2f573
|
Redo hash table to avoid array append & GC lock/unlock
Also save hash to speed up in case of collisions & allow future re-hashing.
|
2013-02-23 00:50:37 +04:00 |
Dmitry Olshansky
|
e4baf99ca4
|
avoid creating html-entity AA at start-up - 10% speed up(!)
This is not even remotely funny creating this huge AA
at run-time took around 10% of the whole time to lex std.datetime
|
2013-02-23 00:00:19 +04:00 |
Hackerpilot
|
119c6b917d
|
code cleanup
|
2013-02-20 22:36:55 -08:00 |
Hackerpilot
|
89d18755b8
|
Merged changes from @blackwhale. Added and fixed unit tests.
|
2013-02-18 02:45:57 +00:00 |
Hackerpilot
|
b4220c473b
|
Merged changes from @blackwhale. Added and fixed unit tests.
|
2013-02-18 02:32:36 +00:00 |
Hackerpilot
|
c61e5d2a88
|
refactoring
|
2013-02-16 21:48:42 -08:00 |
Hackerpilot
|
102836503f
|
unit test coverage
|
2013-02-14 22:24:15 +00:00 |
Hackerpilot
|
9c3cde0d94
|
Merge branch 'range-based-lexer' of https://github.com/Hackerpilot/Dscanner into range-based-lexer
|
2013-02-14 20:05:53 +00:00 |
Hackerpilot
|
ab222f7aef
|
unit tests
|
2013-02-14 19:59:11 -08:00 |
Hackerpilot
|
d756149b52
|
for the parser
|
2013-02-14 20:05:50 +00:00 |