Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.6-rc-1
-
None
-
None
Description
Currently methods that take primitive types cannot be used through categories. While it might not be an issue for new classes created with the future category use in mind, existing classes frequently cannot be changed from using primitive to wrapper types just to be usable as categories.
For example the Math class is now not very useful to be used as a Category due to this limitation.
double number = 10.0
println Math.log(number)
use(Math) {
println number.log()
}
This code will throw with "Caught: groovy.lang.MissingMethodException: No signature of method: java.lang.Double.log() is applicable for argument types: () values: {}"