Skip defined() checks, unnecessary multiplication #21
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.
In version 1.x, the constants were defined in the global namespace so it was responsible to explicitly check that, for instance,
HOUR_IN_SECONDS
was not already defined before attempting to define it.Now that the constants are namespaced, this just adds unnecessary overhead: if someone else is defining constants in the
TimeConstants
namespace, there are bigger problems. Additionally, IDEs seem to trip over thedefined()
checks, not being sure that the constants exist. They do.Similarly, while it was fun writing the intial constants in a way that they build upon each other, there's really no reason that this file should have to confirm (for example) that 24 hours * 60 minutes/hour = 1440 minutes/hour. These values do not change (hence constants), so save a little bit of basic multiplication by hard-coding the values.