Commit graph

10 commits

Author SHA1 Message Date
Michael Miller
8efd38fbdd
Split Arguments class by functionality
Code changes for https://github.com/icy-arctic-fox/spectator/issues/47 caused a drastic increase in compilation times.
This improves compilation times by splitting concerns for arguments.
In one case, arguments are used for matching.
In the other, arguments are captured for comparison.
The second case has been moved to a FormalArguments class.
Theoretically, this reduces the complexity and combinations the compiler might be iterating.
2022-11-27 22:26:19 -07:00
Michael Miller
c77da67341
Hide splat label in certain situations
Undefined double methods were reporting splat arguments, which is technically correct.
But for output in these cases, it makes more sense to show the exact calling args.
2022-10-23 21:56:37 -06:00
Michael Miller
e2130d12d3
Implement arguments case equality
Implements https://github.com/icy-arctic-fox/spectator/issues/47
Some specs are failing and need to be resolved before the new feature is considered done.
2022-10-23 20:42:08 -06:00
Michael Miller
a728a037d4
Rename attributes 2022-10-23 15:37:55 -06:00
Michael Miller
163f94287e
Fix Arguments to_s 2022-10-23 15:27:39 -06:00
Michael Miller
e38e3ecc32
Initial rework of arguments to support named positionals 2022-10-23 15:22:50 -06:00
Michael Miller
4aaa8db5e2
Rename Arguments.empty to Arguments.none 2022-07-12 18:59:23 -06:00
Michael Miller
29389f1dbf
Add indexer methods for captured arguments 2022-07-10 17:38:17 -06:00
Michael Miller
5ad29f486f
Better formatting for empty arguments 2022-03-12 17:49:07 -07:00
Michael Miller
de7cd90d11
Add type capturing arguments 2022-03-04 17:16:45 -07:00