.
This commit is contained in:
		
							
								
								
									
										130
									
								
								qwen/nodejs/node_modules/prelude-ls/lib/Num.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										130
									
								
								qwen/nodejs/node_modules/prelude-ls/lib/Num.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,130 @@
 | 
			
		||||
// Generated by LiveScript 1.6.0
 | 
			
		||||
var max, min, negate, abs, signum, quot, rem, div, mod, recip, pi, tau, exp, sqrt, ln, pow, sin, tan, cos, asin, acos, atan, atan2, truncate, round, ceiling, floor, isItNaN, even, odd, gcd, lcm;
 | 
			
		||||
max = curry$(function(x$, y$){
 | 
			
		||||
  return x$ > y$ ? x$ : y$;
 | 
			
		||||
});
 | 
			
		||||
min = curry$(function(x$, y$){
 | 
			
		||||
  return x$ < y$ ? x$ : y$;
 | 
			
		||||
});
 | 
			
		||||
negate = function(x){
 | 
			
		||||
  return -x;
 | 
			
		||||
};
 | 
			
		||||
abs = Math.abs;
 | 
			
		||||
signum = function(x){
 | 
			
		||||
  if (x < 0) {
 | 
			
		||||
    return -1;
 | 
			
		||||
  } else if (x > 0) {
 | 
			
		||||
    return 1;
 | 
			
		||||
  } else {
 | 
			
		||||
    return 0;
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
quot = curry$(function(x, y){
 | 
			
		||||
  return ~~(x / y);
 | 
			
		||||
});
 | 
			
		||||
rem = curry$(function(x$, y$){
 | 
			
		||||
  return x$ % y$;
 | 
			
		||||
});
 | 
			
		||||
div = curry$(function(x, y){
 | 
			
		||||
  return Math.floor(x / y);
 | 
			
		||||
});
 | 
			
		||||
mod = curry$(function(x$, y$){
 | 
			
		||||
  var ref$;
 | 
			
		||||
  return ((x$) % (ref$ = y$) + ref$) % ref$;
 | 
			
		||||
});
 | 
			
		||||
recip = (function(it){
 | 
			
		||||
  return 1 / it;
 | 
			
		||||
});
 | 
			
		||||
pi = Math.PI;
 | 
			
		||||
tau = pi * 2;
 | 
			
		||||
exp = Math.exp;
 | 
			
		||||
sqrt = Math.sqrt;
 | 
			
		||||
ln = Math.log;
 | 
			
		||||
pow = curry$(function(x$, y$){
 | 
			
		||||
  return Math.pow(x$, y$);
 | 
			
		||||
});
 | 
			
		||||
sin = Math.sin;
 | 
			
		||||
tan = Math.tan;
 | 
			
		||||
cos = Math.cos;
 | 
			
		||||
asin = Math.asin;
 | 
			
		||||
acos = Math.acos;
 | 
			
		||||
atan = Math.atan;
 | 
			
		||||
atan2 = curry$(function(x, y){
 | 
			
		||||
  return Math.atan2(x, y);
 | 
			
		||||
});
 | 
			
		||||
truncate = function(x){
 | 
			
		||||
  return ~~x;
 | 
			
		||||
};
 | 
			
		||||
round = Math.round;
 | 
			
		||||
ceiling = Math.ceil;
 | 
			
		||||
floor = Math.floor;
 | 
			
		||||
isItNaN = function(x){
 | 
			
		||||
  return x !== x;
 | 
			
		||||
};
 | 
			
		||||
even = function(x){
 | 
			
		||||
  return x % 2 === 0;
 | 
			
		||||
};
 | 
			
		||||
odd = function(x){
 | 
			
		||||
  return x % 2 !== 0;
 | 
			
		||||
};
 | 
			
		||||
gcd = curry$(function(x, y){
 | 
			
		||||
  var z;
 | 
			
		||||
  x = Math.abs(x);
 | 
			
		||||
  y = Math.abs(y);
 | 
			
		||||
  while (y !== 0) {
 | 
			
		||||
    z = x % y;
 | 
			
		||||
    x = y;
 | 
			
		||||
    y = z;
 | 
			
		||||
  }
 | 
			
		||||
  return x;
 | 
			
		||||
});
 | 
			
		||||
lcm = curry$(function(x, y){
 | 
			
		||||
  return Math.abs(Math.floor(x / gcd(x, y) * y));
 | 
			
		||||
});
 | 
			
		||||
module.exports = {
 | 
			
		||||
  max: max,
 | 
			
		||||
  min: min,
 | 
			
		||||
  negate: negate,
 | 
			
		||||
  abs: abs,
 | 
			
		||||
  signum: signum,
 | 
			
		||||
  quot: quot,
 | 
			
		||||
  rem: rem,
 | 
			
		||||
  div: div,
 | 
			
		||||
  mod: mod,
 | 
			
		||||
  recip: recip,
 | 
			
		||||
  pi: pi,
 | 
			
		||||
  tau: tau,
 | 
			
		||||
  exp: exp,
 | 
			
		||||
  sqrt: sqrt,
 | 
			
		||||
  ln: ln,
 | 
			
		||||
  pow: pow,
 | 
			
		||||
  sin: sin,
 | 
			
		||||
  tan: tan,
 | 
			
		||||
  cos: cos,
 | 
			
		||||
  acos: acos,
 | 
			
		||||
  asin: asin,
 | 
			
		||||
  atan: atan,
 | 
			
		||||
  atan2: atan2,
 | 
			
		||||
  truncate: truncate,
 | 
			
		||||
  round: round,
 | 
			
		||||
  ceiling: ceiling,
 | 
			
		||||
  floor: floor,
 | 
			
		||||
  isItNaN: isItNaN,
 | 
			
		||||
  even: even,
 | 
			
		||||
  odd: odd,
 | 
			
		||||
  gcd: gcd,
 | 
			
		||||
  lcm: lcm
 | 
			
		||||
};
 | 
			
		||||
function curry$(f, bound){
 | 
			
		||||
  var context,
 | 
			
		||||
  _curry = function(args) {
 | 
			
		||||
    return f.length > 1 ? function(){
 | 
			
		||||
      var params = args ? args.concat() : [];
 | 
			
		||||
      context = bound ? context || this : this;
 | 
			
		||||
      return params.push.apply(params, arguments) <
 | 
			
		||||
          f.length && arguments.length ?
 | 
			
		||||
        _curry.call(context, params) : f.apply(context, params);
 | 
			
		||||
    } : f;
 | 
			
		||||
  };
 | 
			
		||||
  return _curry();
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user