Florian Diebold
6c20d7e979
Small fixes
2020-03-16 18:46:08 +01:00
Florian Diebold
32dce75747
Some more refactoring
2020-03-16 18:38:19 +01:00
Florian Diebold
d6b622cdef
Some cleanup
2020-03-16 18:38:19 +01:00
Florian Diebold
d655749aae
Turn ExpandResult into struct
2020-03-16 18:38:19 +01:00
Florian Diebold
f3c6a2e3db
Fix remaining test failure
2020-03-16 18:38:19 +01:00
Florian Diebold
0660dd10d2
Fix performance problem
2020-03-16 18:38:19 +01:00
Florian Diebold
035db0fbb9
Add test, remove printlns
2020-03-16 18:38:19 +01:00
Florian Diebold
c32529ddd0
Get tests working
2020-03-16 18:38:19 +01:00
Florian Diebold
0f3a54dd4d
wip
2020-03-16 18:38:19 +01:00
Florian Diebold
6305d094ac
Attempt to implement ranking of rules when none matches perfectly (wip)
2020-03-16 18:38:19 +01:00
Florian Diebold
b973158aeb
Make MBE expansion more resilient (WIP)
2020-03-16 18:38:19 +01:00
Aleksey Kladov
4551182f94
use usual token tree for macro expansion
2019-09-17 15:51:48 +03:00
Aleksey Kladov
37ef8927c3
split mbe expander code into two modules
2019-09-17 02:06:14 +03:00
Aleksey Kladov
4fdaec99c0
simiplify
2019-09-10 20:28:50 +03:00
Aleksey Kladov
6e5198cd6d
add fragmets to expansion
2019-09-10 20:26:41 +03:00
Aleksey Kladov
1c5800dee8
"Fix" mbe to work with decomposed tokens
...
We regressed $i * 2 where $i = 1 + 1, need to fix that!
2019-09-10 15:56:05 +03:00
Aleksey Kladov
e2b3844493
remove needless clone
2019-09-02 19:21:28 +03:00
Aleksey Kladov
c89abd4262
simplify
2019-09-02 18:58:21 +03:00
Aleksey Kladov
08fd402ef2
migrate mbe to the new rowan
2019-07-19 13:16:24 +03:00
Jeremy Kolb
4ad9e986ad
Some clippy fixes for 1.36
2019-07-04 17:43:00 -04:00
Aleksey Kladov
1834bae5b8
allow rustfmt to reorder imports
...
This wasn't a right decision in the first place, the feature flag was
broken in the last rustfmt release, and syntax highlighting of imports
is more important anyway
2019-07-04 23:09:09 +03:00
Alan Du
b28ca32db2
Fix clippy::or_fun_call
2019-06-04 18:05:07 -04:00
Alan Du
40424d4222
Fix clippy::identity_conversion
2019-06-04 18:05:07 -04:00
Aleksey Kladov
2e3f5af9d4
move mbe to the new API
2019-05-28 17:39:01 +03:00
Edwin Cheng
ad9d2012de
Fix match literal
2019-05-20 18:29:02 +08:00
Edwin Cheng
a48e33f139
Fixed missing empty vars
2019-05-05 10:32:57 +08:00
Edwin Cheng
4ba4747578
Mark unused mbe variable as Binding::Empty
2019-05-04 01:14:25 +08:00
Edwin Cheng
31909cc7d7
By pass unbind $var while mbe expanding
2019-05-03 23:23:21 +08:00
Edwin Cheng
e8e46100d6
Refactor out tests module and remove empty subtree
2019-05-03 21:38:00 +08:00
Edwin Cheng
ab91050d49
Fix typo
2019-05-03 00:01:48 +08:00
Edwin Cheng
1446d620c5
Add empty bindings and some refactoring
2019-05-02 23:23:14 +08:00
Edwin Cheng
35c4633150
Make vis
matcher optional and fix typo
2019-05-02 21:24:51 +08:00
Edwin Cheng
c55a2dbc1d
Fix more bugs
2019-04-26 02:03:56 +08:00
Edwin Cheng
299d97b6d9
Add handling token
seperator in mbe
2019-04-26 02:03:55 +08:00
Edwin Cheng
e4e2338f97
Fix incorrect repeat sep eating
2019-04-26 02:03:55 +08:00
Edwin Cheng
49c9686c3c
Handle *+
case and single token case
2019-04-22 05:04:37 +08:00
Edwin Cheng
9e35bf91b8
Fix bugs
2019-04-20 23:53:39 +08:00
Edwin Cheng
41c1a639c3
Disable tt matcher
2019-04-20 02:19:46 +08:00
Edwin Cheng
87ff908135
Add vis matcher
2019-04-19 21:38:26 +08:00
Edwin Cheng
c5983b85fc
Add literal matcher
2019-04-19 21:21:47 +08:00
Edwin Cheng
313854c728
Add lifetime matcher
2019-04-19 21:15:19 +08:00
Edwin Cheng
59b6cc780b
add tt matcher
2019-04-19 19:41:59 +08:00
Edwin Cheng
762819864f
add block matcher
2019-04-19 19:33:29 +08:00
Edwin Cheng
8092b6487f
Add block matcher
2019-04-19 18:30:43 +08:00
Edwin Cheng
e944fd059d
Add item
matcher in mbe
2019-04-18 10:21:36 +08:00
Edwin Cheng
57e4122b89
Add mbe stmt matcher
2019-04-17 12:34:43 +08:00
Edwin Cheng
6646d49f23
Fix bug and add expr , pat , ty matcher
2019-04-14 11:42:20 +08:00
Edwin Cheng
1d7735fbc6
Add path test and empty eat_path handling
2019-04-06 12:12:32 +08:00
Aleksey Kladov
d4449945a0
hack around non-terminating macro expansion
2019-03-17 12:52:52 +03:00
Wilco Kusee
c9d6efc468
Add expander unit tests
2019-03-03 20:33:50 +01:00