/** Interval objects are used readonly so share all with the * same single value a==b up to some max size. Use an array as a perfect hash. * Return shared object for 0..INTERVAL_POOL_MAX_VALUE or a new * Interval object with a..a in it. On Java.g, 218623 IntervalSets * have a..a (set with 1 element). */ public static Interval create(int a, int b) { //return new Interval(a,b); // cache just a..a if ( a!=b || a<0 || a>INTERVAL_POOL_MAX_VALUE ) { return new Interval(a,b); } if ( cache[a]==null ) { cache[a] = new Interval(a,a); } return cache[a]; }
/** Interval objects are used readonly so share all with the * same single value a==b up to some max size. Use an array as a perfect hash. * Return shared object for 0..INTERVAL_POOL_MAX_VALUE or a new * Interval object with a..a in it. On Java.g, 218623 IntervalSets * have a..a (set with 1 element). */ public static Interval create(int a, int b) { //return new Interval(a,b); // cache just a..a if ( a!=b || a<0 || a>INTERVAL_POOL_MAX_VALUE ) { return new Interval(a,b); } if ( cache[a]==null ) { cache[a] = new Interval(a,a); } return cache[a]; }
/** Interval objects are used readonly so share all with the * same single value a==b up to some max size. Use an array as a perfect hash. * Return shared object for 0..INTERVAL_POOL_MAX_VALUE or a new * Interval object with a..a in it. On Java.g, 218623 IntervalSets * have a..a (set with 1 element). */ public static Interval create(int a, int b) { //return new Interval(a,b); // cache just a..a if ( a!=b || a<0 || a>INTERVAL_POOL_MAX_VALUE ) { return new Interval(a,b); } if ( cache[a]==null ) { cache[a] = new Interval(a,a); } return cache[a]; }
/** Interval objects are used readonly so share all with the * same single value a==b up to some max size. Use an array as a perfect hash. * Return shared object for 0..INTERVAL_POOL_MAX_VALUE or a new * Interval object with a..a in it. On Java.g, 218623 IntervalSets * have a..a (set with 1 element). */ public static Interval create(int a, int b) { //return new Interval(a,b); // cache just a..a if ( a!=b || a<0 || a>INTERVAL_POOL_MAX_VALUE ) { return new Interval(a,b); } if ( cache[a]==null ) { cache[a] = new Interval(a,a); } return cache[a]; }