Rob Rix
|
771ed5673e
|
Use skipAndContinue in the space branch.
|
2015-12-14 16:27:50 -05:00 |
|
Rob Rix
|
025565ac68
|
Extract a skipAndContinue function.
|
2015-12-14 16:27:36 -05:00 |
|
Rob Rix
|
c1c50915d3
|
isSpace, not isSeparator.
|
2015-12-14 16:25:51 -05:00 |
|
Rob Rix
|
1d559b2b9a
|
Fewer parentheses.
|
2015-12-14 16:24:03 -05:00 |
|
Rob Rix
|
e9f21668a1
|
Use Alternative to combine our non-skipped parsers.
|
2015-12-14 16:23:09 -05:00 |
|
Rob Rix
|
835a3a0245
|
Parse spans of words & non-word punctuation.
|
2015-12-14 16:20:42 -05:00 |
|
Rob Rix
|
be9e4c7a01
|
Add a function to take a range & substring & continue.
|
2015-12-14 16:20:09 -05:00 |
|
Rob Rix
|
9e4071eb35
|
Remove the word/punctuation/space predicates.
|
2015-12-14 16:19:34 -05:00 |
|
Rob Rix
|
9af8783d1e
|
Add a word-or-separator predicate.
|
2015-12-14 16:19:21 -05:00 |
|
Rob Rix
|
a135c24967
|
Define the other parsers in terms of parse .
|
2015-12-14 16:08:52 -05:00 |
|
Rob Rix
|
5aa5361c4e
|
Generalize.
|
2015-12-14 16:07:49 -05:00 |
|
Rob Rix
|
5825484fb3
|
Add parsers for words, punctuation, and spaces.
|
2015-12-14 16:07:06 -05:00 |
|
Rob Rix
|
9e01666d7d
|
🔥 rangesAndWordsAfterWhitespace.
|
2015-12-14 15:56:57 -05:00 |
|
Rob Rix
|
8990db2b79
|
Skip whitespace inline here too.
|
2015-12-14 15:56:44 -05:00 |
|
Rob Rix
|
cee1da65b4
|
Skip whitespace inline.
|
2015-12-14 15:55:02 -05:00 |
|
Rob Rix
|
cded6c0d7d
|
Get the substrings out at the same time as computing the ranges.
|
2015-12-14 15:37:30 -05:00 |
|
Rob Rix
|
fdb1a6a9f7
|
Correct the tests.
|
2015-12-14 15:33:16 -05:00 |
|
Rob Rix
|
df4b74876a
|
Rename the word ranges function.
|
2015-12-14 15:31:45 -05:00 |
|
Rob Rix
|
eb9f36870d
|
Remove a redundant case.
This gets picked up adequately by the next one.
|
2015-12-14 15:30:53 -05:00 |
|
Rob Rix
|
06a826c5f0
|
Merge branch 'master' into post-process-leaf-nodes-in-terms
|
2015-12-14 15:28:04 -05:00 |
|
Josh Vera
|
48004fe4f7
|
Merge pull request #317 from github/quickcheck
QuickCheck
|
2015-12-14 15:24:05 -05:00 |
|
Rob Rix
|
9d61286d81
|
Take only maxLength elements for keyed nodes.
|
2015-12-14 15:18:56 -05:00 |
|
Rob Rix
|
32d460bce7
|
Rename n to maxDepth .
|
2015-12-14 15:18:16 -05:00 |
|
Rob Rix
|
686325bf4c
|
Rename m to maxLength .
|
2015-12-14 15:17:26 -05:00 |
|
Rob Rix
|
5c90ecde8e
|
Use the cube of the max length, not the square.
I.e. shrink the produces lists.
|
2015-12-14 15:15:56 -05:00 |
|
Rob Rix
|
33c0dacd55
|
Take m, not n.
|
2015-12-14 15:13:32 -05:00 |
|
Rob Rix
|
2f726d4ba6
|
🔥 ArbitraryDiff .
|
2015-12-14 15:12:07 -05:00 |
|
Rob Rix
|
a93908a5f8
|
Test the reflexivity of Diff equality by generating a pair of terms and diffing them.
|
2015-12-14 15:11:59 -05:00 |
|
Rob Rix
|
2e5d85748b
|
Capture the construction of strictly smaller terms in the where clause.
|
2015-12-14 15:08:32 -05:00 |
|
Rob Rix
|
170fc65f5c
|
Test for word characters specifically.
|
2015-12-14 15:03:24 -05:00 |
|
Rob Rix
|
ca7e1f5ff1
|
Document the word character predicate.
|
2015-12-14 15:02:09 -05:00 |
|
Rob Rix
|
4fae286cf0
|
Add a character predicate to test for word characters.
|
2015-12-14 15:01:38 -05:00 |
|
Rob Rix
|
9c1dd640f5
|
Don’t bind subrange, since we only use it once.
|
2015-12-14 14:41:12 -05:00 |
|
Rob Rix
|
1d9e945aad
|
Pass absolute start indices to children.
|
2015-12-14 14:40:30 -05:00 |
|
Rob Rix
|
714c8ff682
|
Compute the substring from the subrange.
|
2015-12-14 14:39:50 -05:00 |
|
Rob Rix
|
37f236d7d7
|
Remove redundant imports.
|
2015-12-14 14:15:46 -05:00 |
|
Rob Rix
|
4083829e12
|
Bind a different variable for the subrange.
|
2015-12-14 13:04:21 -05:00 |
|
Rob Rix
|
c115262f7f
|
Share a single computation of the substring for each case.
|
2015-12-14 13:01:17 -05:00 |
|
Rob Rix
|
718399c7d9
|
Compute the substring once and only once.
|
2015-12-14 12:59:47 -05:00 |
|
Rob Rix
|
3e22121d66
|
Test that the offset is applied.
|
2015-12-14 12:53:14 -05:00 |
|
Rob Rix
|
48464ac552
|
Test that we skip whitespace at the end.
|
2015-12-14 12:52:37 -05:00 |
|
Rob Rix
|
bfdf388b5c
|
Test that we skip whitespace at the start.
|
2015-12-14 12:52:01 -05:00 |
|
Rob Rix
|
7bf7d22d8e
|
Test that multiple whitespace characters are skipped.
|
2015-12-14 12:51:23 -05:00 |
|
Rob Rix
|
58830283d4
|
Correct rangesOfWordsFrom to produce start/end ranges, not start/length ranges.
|
2015-12-14 12:49:51 -05:00 |
|
Rob Rix
|
1bdfa51702
|
Test that multiple words → multiple ranges.
|
2015-12-14 12:49:01 -05:00 |
|
Rob Rix
|
da6995ae54
|
Test that a single word string is covered by the returned range.
|
2015-12-14 12:48:04 -05:00 |
|
Rob Rix
|
fca022109c
|
Uh, ok.
|
2015-12-14 12:47:51 -05:00 |
|
Rob Rix
|
ce5854e019
|
Test that the empty string doesn’t have any word ranges in it.
|
2015-12-14 12:46:53 -05:00 |
|
Rob Rix
|
8951bebfa7
|
Test that rangesOfWordsFrom doesn’t produce words for whitespace.
|
2015-12-14 12:46:20 -05:00 |
|
Rob Rix
|
bf9aa915a3
|
Move rangesOfWordsFrom into Range.hs.
|
2015-12-14 12:44:48 -05:00 |
|