Package org.codehaus.groovy.vmplugin.v8
Class IndyMath
java.lang.Object
org.codehaus.groovy.vmplugin.v8.IndyMath
This class contains math operations used by indy instead of the normal
 meta method and call site caching system. The goal is to avoid boxing, thus
 use primitive types for parameters and return types where possible.
 WARNING: This class is for internal use only. Do not use it outside the
 org.codehaus.groovy.vmplugin.v7 package of groovy-core.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionstatic intand(int a, int b) static longand(long a, long b) static booleanchooseMathMethod(Selector info, MetaMethod metaMethod) Choose a method to replace the originally chosen metaMethod to have a more efficient call path.static doublediv(double a, double b) static intleftShift(int a, int b) static longleftShift(long a, long b) static doubleminus(double a, double b) static intminus(int a, int b) static longminus(long a, long b) static intmod(int a, int b) static longmod(long a, long b) static doublemultiply(double a, double b) static intmultiply(int a, int b) static longmultiply(long a, long b) static doublenext(double d) static intnext(int i) static longnext(long l) static intor(int a, int b) static longor(long a, long b) static doubleplus(double a, double b) static intplus(int a, int b) static longplus(long a, long b) static doubleprevious(double d) static intprevious(int i) static longprevious(long l) static intrightShift(int a, int b) static longrightShift(long a, long b) static intxor(int a, int b) static longxor(long a, long b) 
- 
Constructor Details- 
IndyMathpublic IndyMath()
 
- 
- 
Method Details- 
chooseMathMethodChoose a method to replace the originally chosen metaMethod to have a more efficient call path.
- 
pluspublic static int plus(int a, int b) 
- 
minuspublic static int minus(int a, int b) 
- 
multiplypublic static int multiply(int a, int b) 
- 
modpublic static int mod(int a, int b) 
- 
orpublic static int or(int a, int b) 
- 
xorpublic static int xor(int a, int b) 
- 
andpublic static int and(int a, int b) 
- 
leftShiftpublic static int leftShift(int a, int b) 
- 
rightShiftpublic static int rightShift(int a, int b) 
- 
pluspublic static long plus(long a, long b) 
- 
minuspublic static long minus(long a, long b) 
- 
multiplypublic static long multiply(long a, long b) 
- 
modpublic static long mod(long a, long b) 
- 
orpublic static long or(long a, long b) 
- 
xorpublic static long xor(long a, long b) 
- 
andpublic static long and(long a, long b) 
- 
leftShiftpublic static long leftShift(long a, long b) 
- 
rightShiftpublic static long rightShift(long a, long b) 
- 
pluspublic static double plus(double a, double b) 
- 
minuspublic static double minus(double a, double b) 
- 
multiplypublic static double multiply(double a, double b) 
- 
divpublic static double div(double a, double b) 
- 
nextpublic static int next(int i) 
- 
nextpublic static long next(long l) 
- 
nextpublic static double next(double d) 
- 
previouspublic static int previous(int i) 
- 
previouspublic static long previous(long l) 
- 
previouspublic static double previous(double d) 
 
-