-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Replace functor IntervalFunctor
with a module
#275
Comments
But these ranges represent the number of bits, not the values themselves, right? Seems way overkill to use bigints for numbers like 64 or -63.
Does it actually get simpler by any extent? First, you just get rid of the functor's argument and hardcode
I suppose you're referring to the fact that many of them still return So given the generality of the already implemented functor, I don't really see the reason to throw it away. Especially now that in #251 the flattened int domain has also been generalized to any I think there are other parts of |
Agree
I thought they only return |
What is the state here? Do we still want to do this, or should we close the issue? |
My opinion is still that it should remain as a functor. In the light of #734 it might even be beneficial to further extract and generalize the interval domain, such that certain parts could be reused for floats as well. |
I closed the issue as there are still two instances of the functor (with bigints and with 64 bit-ints). |
Currently, the
IntervalFunctor
takes anIntOps
module to allow instantiations of the interval domain to work with eitherint64
or bigints. The only places that still rely on the intervals usingint64
internally are the ranges forDefExc
andEnums
, but these can be patched to work with bigints.A benefit would be that the code structure gets simpler by getting rid of the functor, and additionally, the functions in
IntDomain.Size
would work on bigints more uniformly.The text was updated successfully, but these errors were encountered: