Sven M. Hallberg
|
168760b10a
|
return running state from h_lrengine_step
|
2013-06-19 14:16:34 +02:00 |
|
Sven M. Hallberg
|
409d33c916
|
split out h_lrengine_action()
|
2013-06-19 14:09:39 +02:00 |
|
Sven M. Hallberg
|
129d50c0ef
|
split LR code into lr.c, lr0.c, and lalr.c
|
2013-06-17 20:08:25 +02:00 |
|
Sven M. Hallberg
|
7eff4b8d94
|
factor out a struct HLREngine
|
2013-06-17 19:11:18 +02:00 |
|
Meredith L. Patterson
|
3e85648844
|
Merge pull request #13 from pesco/LALR
LALR backend
|
2013-06-16 13:34:17 -07:00 |
|
Meredith L. Patterson
|
fdafb64762
|
Merge pull request #12 from pesco/recursive_indirect
Pre-allocate the result of h_desugar so recursive h_indirect works
|
2013-06-16 13:33:52 -07:00 |
|
Sven M. Hallberg
|
67b6e9666c
|
fix a potentially uninitialized variable
|
2013-06-16 22:29:53 +02:00 |
|
Sven M. Hallberg
|
24c15f34cc
|
augment grammar to ensure start symbol never occurs on rhs
|
2013-06-16 22:23:35 +02:00 |
|
Sven M. Hallberg
|
8d21c782e7
|
fix eq/hash_lalr_item to compare symbols by value
|
2013-06-15 21:24:27 +02:00 |
|
Sven M. Hallberg
|
f0cd2de55c
|
fix match_production for the empty-sequence case
|
2013-06-15 20:54:53 +02:00 |
|
Sven M. Hallberg
|
5a57adabab
|
some refactoring trying to get h_many to work
|
2013-06-15 20:30:57 +02:00 |
|
Sven M. Hallberg
|
9a96314931
|
refactor hashtable iterations to use H_FOREACH
|
2013-06-15 19:06:10 +02:00 |
|
Sven M. Hallberg
|
e56f052255
|
remove the extra +1 from h_arena_malloc
|
2013-06-15 16:04:29 +02:00 |
|
Sven M. Hallberg
|
a7fe3824cd
|
minor bugfixies
|
2013-06-14 19:07:26 +02:00 |
|
Sven M. Hallberg
|
d51e13173a
|
add LALR test suite
|
2013-06-14 17:36:46 +02:00 |
|
Sven M. Hallberg
|
1918c97e1c
|
fix a premature arena delete
|
2013-06-14 17:36:30 +02:00 |
|
Sven M. Hallberg
|
06acbe2fb5
|
LALR example parses!
|
2013-06-14 17:17:23 +02:00 |
|
Sven M. Hallberg
|
bfc2433320
|
don't call compare function on NULL hashtable keys
|
2013-06-14 17:07:56 +02:00 |
|
Sven M. Hallberg
|
6f44ab1196
|
Merge branch 'recursive_indirect' into LALR
|
2013-06-14 12:51:48 +02:00 |
|
Sven M. Hallberg
|
f65b0ae82a
|
commentation
|
2013-06-14 12:50:39 +02:00 |
|
Sven M. Hallberg
|
dfe4c3ad47
|
add right-recursion test for packrat and llk
|
2013-06-14 12:42:55 +02:00 |
|
Sven M. Hallberg
|
7b04ab8d9d
|
pre-allocate h_desugar's result to squelch recursive calls
|
2013-06-14 12:27:35 +02:00 |
|
Sven M. Hallberg
|
92f16a4d14
|
proper LALR example with conflict in LR(0)
|
2013-06-14 12:24:18 +02:00 |
|
Sven M. Hallberg
|
fd297b636c
|
add LALR conflict resolution (untested)
|
2013-06-13 14:45:26 +02:00 |
|
Sven M. Hallberg
|
ddfd3796a7
|
why not include the lhs in pretty-printed reduce entries?
|
2013-06-12 16:48:59 +02:00 |
|
Sven M. Hallberg
|
4b5a936667
|
handle charsets
|
2013-06-12 16:38:50 +02:00 |
|
Sven M. Hallberg
|
41d4be4b84
|
avoid a segfault on getting the token position
|
2013-06-12 15:54:46 +02:00 |
|
Sven M. Hallberg
|
ce387d81b6
|
save production rhs in reduce actions for pretty-printing if not compiled NDEBUG
|
2013-06-12 15:48:52 +02:00 |
|
Sven M. Hallberg
|
805dfeb363
|
duh, forgot to record the start symbol in table
|
2013-06-12 15:33:53 +02:00 |
|
Sven M. Hallberg
|
0a7548bb2f
|
lr driver, first stab (still bugged)
|
2013-06-12 15:07:19 +02:00 |
|
Sven M. Hallberg
|
bbdced376e
|
derps etc
|
2013-06-11 01:12:25 +02:00 |
|
Sven M. Hallberg
|
04487ff80f
|
add table pretty-printer
|
2013-06-10 23:45:25 +02:00 |
|
Sven M. Hallberg
|
4cd51b8953
|
make it compile and fix some basic segfaults
|
2013-06-10 22:05:12 +02:00 |
|
Sven M. Hallberg
|
dabe4b07a9
|
wip end-of-day commit - almost there (untested)
|
2013-06-10 00:46:03 +02:00 |
|
Sven M. Hallberg
|
3bb26162c3
|
end-of-day scratch commit (LALR table generation)
|
2013-06-07 22:39:09 +02:00 |
|
Sven M. Hallberg
|
f041775bb9
|
declare h_cfgrammar_new in cfgrammar.h
|
2013-06-07 22:38:26 +02:00 |
|
Sven M. Hallberg
|
732545274a
|
look up neighbor set index properly (was left uninitialized)
|
2013-06-07 16:55:36 +02:00 |
|
Sven M. Hallberg
|
67e5b2fee0
|
add DFA pretty-printer
|
2013-06-07 16:44:07 +02:00 |
|
Sven M. Hallberg
|
373a7aef94
|
make h_pprint_char from cfgrammar public so LR pretty printers can use it
|
2013-06-07 16:29:14 +02:00 |
|
Sven M. Hallberg
|
43fc07e67b
|
add construction of LR(0) automaton (untested)
|
2013-06-07 13:47:00 +02:00 |
|
Sven M. Hallberg
|
3ad4c51070
|
fix hte_same_length()
|
2013-06-07 13:46:16 +02:00 |
|
Sven M. Hallberg
|
167e187151
|
scratch commit of LALR preparations (breaks compile)
|
2013-06-06 13:05:48 +02:00 |
|
Sven M. Hallberg
|
e7a388d1c7
|
move djbhash into general availability as h_djbhash
|
2013-06-06 13:02:29 +02:00 |
|
Sven M. Hallberg
|
b959bcb5c7
|
fix an array index
|
2013-06-06 13:01:39 +02:00 |
|
Sven M. Hallberg
|
636f741d88
|
add h_hashset_equal (set comparison)
|
2013-06-05 15:12:48 +02:00 |
|
Sven M. Hallberg
|
976205f9da
|
hook up LALR backend stub
|
2013-06-04 22:14:06 +02:00 |
|
Sven M. Hallberg
|
ef52f66a8c
|
Merge branch 'LL' of github.com:pesco/hammer into LL
Conflicts:
src/cfgrammar.c
|
2013-06-04 22:02:04 +02:00 |
|
Sven M. Hallberg
|
3be83c7fa2
|
set index and offset of result tokens in llk driver
|
2013-06-04 21:59:39 +02:00 |
|
Sven M. Hallberg
|
dba9d41eda
|
rename HCFStringMap to HStringMap
|
2013-06-04 21:47:09 +02:00 |
|
Sven M. Hallberg
|
e0207b8d5f
|
properly initialize NULL fields in h_cfgrammar_new and h_stringmap_new
|
2013-05-25 14:49:59 +02:00 |
|