Commit graph

7235 commits

Author SHA1 Message Date
Joshua Warner
61fb9e45fb
Fix handling of spaces in record types 2024-12-15 18:33:57 -08:00
Joshua Warner
6695af474e
Handle comments after return value 2024-12-15 18:33:56 -08:00
Joshua Warner
4e3df6bde2
Fix normalization of strings with overflowing unicode 2024-12-15 18:33:56 -08:00
Joshua Warner
0d182fbd28
Handle multiline string at the start of a pattern 2024-12-15 18:33:56 -08:00
Joshua Warner
10e7e24184
Don't simplify backpassing record assignment 2024-12-15 18:33:56 -08:00
Joshua Warner
c6d5983ff2
clippy fixes 2024-12-15 18:33:55 -08:00
Joshua Warner
20aee5c37b
Force type headers to format just like Pattern::Apply 2024-12-15 18:33:55 -08:00
Joshua Warner
df16e1b633
Move spaces outside of parens 2024-12-15 18:33:55 -08:00
Joshua Warner
96c5dcb651
Relax indentation parsing inside parens, lists, and records 2024-12-15 18:33:54 -08:00
Joshua Warner
1b4f5bbb52
Move indent call to correct spot 2024-12-15 18:33:54 -08:00
Joshua Warner
11d8dd1335
Fixup error case 2024-12-15 18:33:54 -08:00
Joshua Warner
6ef87b3b9d
Graccefully handle overflowing unicode literals 2024-12-15 18:33:54 -08:00
Joshua Warner
a83f44188b
Exit with error in minimize tool if there was no problem to minimize 2024-12-15 18:33:53 -08:00
Joshua Warner
f7baa878f2
Fix as indentation 2024-12-15 18:33:53 -08:00
Joshua Warner
7b9aa59d64
Fix outdenting in closures 2024-12-15 18:33:53 -08:00
Joshua Warner
54a0456c30
Fix double-as formatting 2024-12-15 18:33:52 -08:00
Joshua Warner
307b0d9ea9
Fix closure indentation and indented-else handling in niche pattern case 2024-12-15 18:33:52 -08:00
Joshua Warner
9f3f99c573
Format spaces in as annotation correctly 2024-12-15 18:33:52 -08:00
Joshua Warner
24ba9dbeba
Add parens around implements identifier to be conservative 2024-12-15 18:33:52 -08:00
Joshua Warner
24dd11262e
Avoid patterns that may look like implements clauses without parens 2024-12-15 18:33:51 -08:00
Joshua Warner
8f2a10d52d
Lift spaces in backpassing 2024-12-15 18:33:51 -08:00
Joshua Warner
cccb4abc30
Ensure formatted multiline record patterns work 2024-12-15 18:33:51 -08:00
Joshua Warner
4fd18afce7
Make minimization work properly in the presence of unicode chars 2024-12-15 18:33:51 -08:00
Joshua Warner
8b7ac512f8
Generalize fmt rules around multiline strs in pats 2024-12-15 18:33:50 -08:00
Joshua Warner
d52595738f
Add missing indent call in import 2024-12-15 18:33:50 -08:00
Joshua Warner
2dd4fe03f8
Correctly update newline and indent state in multiline strings 2024-12-15 18:33:50 -08:00
Joshua Warner
a15998872d
Also conservatively check for spaces at the beginning of the pattern 2024-12-15 18:33:50 -08:00
Joshua Warner
0feed5d57b
Clippy 2024-12-15 18:33:49 -08:00
Joshua Warner
7ea074dfa1
Refactoring Node 2024-12-15 18:33:49 -08:00
Joshua Warner
c54b01016e
Disallow eliding empty record destructure assignment if expr looks like an implements clause (fixes #7366) 2024-12-15 18:33:49 -08:00
Joshua Warner
f86f440f2f
Force initial newline in multiline ability def (fixes #7365) 2024-12-15 18:33:48 -08:00
Joshua Warner
abde9e86b1
lift spaces in backpassing (fixes #7364) 2024-12-15 18:33:48 -08:00
Joshua Warner
db95ff54cf
Generalize multiline string handling in patterns 2024-12-15 18:33:48 -08:00
Joshua Warner
7cb2d83168
Ensure we don't over-indent in type headers (fixes #7358) 2024-12-15 18:33:47 -08:00
Joshua Warner
d82accf83d
Don't remove empty record assignment if body looks like an expect 2024-12-15 18:33:47 -08:00
Richard Feldman
a1d61c5a3c
Merge pull request #7373 from roc-lang/specialize-exprs-when
Specialize when expressions
2024-12-14 22:08:05 -05:00
Agus Zubiaga
a51ae4d980
Test multiple patterns per branch 2024-12-14 19:34:29 -03:00
Agus Zubiaga
1503ec4751
Expose to_mono_pattern 2024-12-14 19:30:57 -03:00
Agus Zubiaga
19619e6bf8
Specific lifetime for mono_patterns 2024-12-14 19:29:05 -03:00
Agus Zubiaga
03f9fa31f9
Specialize when branch guards 2024-12-14 19:23:36 -03:00
Agus Zubiaga
dbaa6417a9
Implement dbg mono pattern for CompilerBug 2024-12-14 19:19:18 -03:00
Agus Zubiaga
48e7c5d5d6
Specialize underscore pattern 2024-12-14 19:17:15 -03:00
Agus Zubiaga
90b76db5b1
Specialize number patterns 2024-12-14 18:56:16 -03:00
Agus Zubiaga
3948f485a0
Implement dbg for when mono exprs 2024-12-14 18:14:09 -03:00
Brendan Hansknecht
9fd65ff41b
clarify todo about renabling morphic and perf 2024-12-14 10:31:05 -08:00
Anton-4
1e55134f3b
Merge pull request #7356 from roc-lang/cli-examples-cleanup
cli example removal cleanup
2024-12-14 11:21:43 +01:00
Brendan Hansknecht
1830b3a1f4
limit morphic to trivial analysis to avoid inplace mutation bugs
Surprisingly this actually increases perf of some benchmarks.
My guess is that it fixes bugs during looping and thus reduces work.
Specifically cFold and derive see minor gains ~1.5%; rBTreeCk sees a big gain ~4%.
NQueens is the only benchmark that sees a lost at ~2%.

False interpreter also see a 0-5% perf improvement depending on the exact input.
That said, the improvement was noisy.

ref #7367
2024-12-13 23:11:36 -08:00
Agus Zubiaga
222af2e484
Use MaybeUninit in WhenBranches 2024-12-13 18:46:28 -03:00
Joshua Warner
2389040b39
Fix return backpassing case 2024-12-13 13:45:12 -08:00
Joshua Warner
d56b6b7b20
Add missing indent call 2024-12-13 13:45:12 -08:00