Prepare CalendarArithmetic with new PrecompiledData type parameter #4378
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See comment in #3933 (comment)
This adds a
&PrecompiledData
parameter and threads it through everywhere (not yet using it). This is a rather icky refactor; I've taken some steps to make it not-too-icky, but it's still icky.There is a way by which we may avoid having to do this: if we are certain that we want to cache all relevant info for the date's year on a date itself (likely: leap month info and ratadie) such that provided the year is not changed, the precompiled data store does not need to be hit. In that case the refactor is simpler since we just need to add a
YearInfo
field toArithmeticDate
, which we haven't added yet.