Index: lib/runtime/dart/math.js |
diff --git a/lib/runtime/dart/math.js b/lib/runtime/dart/math.js |
index 5c172e8e7cf57965dc037bbdd067d34d2feb37ad..d18231341baf7b7658d0fe2c69a6dd9aa1affcfe 100644 |
--- a/lib/runtime/dart/math.js |
+++ b/lib/runtime/dart/math.js |
@@ -18,10 +18,10 @@ dart_library.library('dart/math', null, /* Imports */[ |
return 536870911 & dart.notNull(hash) + ((16383 & dart.notNull(hash)) << 15); |
} |
static hash2(a, b) { |
- return _JenkinsSmiHash.finish(_JenkinsSmiHash.combine(_JenkinsSmiHash.combine(0, dart.as(a, core.int)), dart.as(b, core.int))); |
+ return dart.dcall(_JenkinsSmiHash.finish, dart.dcall(_JenkinsSmiHash.combine, dart.dcall(_JenkinsSmiHash.combine, 0, a), b)); |
} |
static hash4(a, b, c, d) { |
- return _JenkinsSmiHash.finish(_JenkinsSmiHash.combine(_JenkinsSmiHash.combine(_JenkinsSmiHash.combine(_JenkinsSmiHash.combine(0, dart.as(a, core.int)), dart.as(b, core.int)), dart.as(c, core.int)), dart.as(d, core.int))); |
+ return dart.dcall(_JenkinsSmiHash.finish, dart.dcall(_JenkinsSmiHash.combine, dart.dcall(_JenkinsSmiHash.combine, dart.dcall(_JenkinsSmiHash.combine, dart.dcall(_JenkinsSmiHash.combine, 0, a), b), c), d)); |
} |
} |
dart.setSignature(_JenkinsSmiHash, { |
@@ -48,7 +48,7 @@ dart_library.library('dart/math', null, /* Imports */[ |
return dart.equals(this.x, dart.dload(other, 'x')) && dart.equals(this.y, dart.dload(other, 'y')); |
} |
get hashCode() { |
- return _JenkinsSmiHash.hash2(dart.hashCode(this.x), dart.hashCode(this.y)); |
+ return dart.dcall(_JenkinsSmiHash.hash2, dart.hashCode(this.x), dart.hashCode(this.y)); |
} |
['+'](other) { |
dart.as(other, Point$(T)); |
@@ -62,19 +62,19 @@ dart_library.library('dart/math', null, /* Imports */[ |
return new (Point$(T))(dart.as(this.x['*'](factor), T), dart.as(this.y['*'](factor), T)); |
} |
get magnitude() { |
- return sqrt(dart.notNull(this.x['*'](this.x)) + dart.notNull(this.y['*'](this.y))); |
+ return dart.dcall(sqrt, dart.notNull(this.x['*'](this.x)) + dart.notNull(this.y['*'](this.y))); |
} |
distanceTo(other) { |
dart.as(other, Point$(T)); |
let dx = this.x['-'](other.x); |
let dy = this.y['-'](other.y); |
- return sqrt(dart.notNull(dx) * dart.notNull(dx) + dart.notNull(dy) * dart.notNull(dy)); |
+ return dart.dcall(sqrt, dart.dsend(dart.dsend(dx, '*', dx), '+', dart.dsend(dy, '*', dy))); |
} |
squaredDistanceTo(other) { |
dart.as(other, Point$(T)); |
let dx = this.x['-'](other.x); |
let dy = this.y['-'](other.y); |
- return dart.as(dart.notNull(dx) * dart.notNull(dx) + dart.notNull(dy) * dart.notNull(dy), T); |
+ return dart.as(dart.dsend(dart.dsend(dx, '*', dx), '+', dart.dsend(dy, '*', dy)), T); |
} |
} |
dart.setSignature(Point, { |
@@ -119,17 +119,17 @@ dart_library.library('dart/math', null, /* Imports */[ |
return dart.equals(this.left, dart.dload(other, 'left')) && dart.equals(this.top, dart.dload(other, 'top')) && dart.equals(this.right, dart.dload(other, 'right')) && dart.equals(this.bottom, dart.dload(other, 'bottom')); |
} |
get hashCode() { |
- return _JenkinsSmiHash.hash4(dart.hashCode(this.left), dart.hashCode(this.top), dart.hashCode(this.right), dart.hashCode(this.bottom)); |
+ return dart.dcall(_JenkinsSmiHash.hash4, dart.hashCode(this.left), dart.hashCode(this.top), dart.hashCode(this.right), dart.hashCode(this.bottom)); |
} |
intersection(other) { |
dart.as(other, Rectangle$(T)); |
- let x0 = max(this.left, other.left); |
- let x1 = min(this.left['+'](this.width), other.left['+'](other.width)); |
- if (dart.notNull(x0) <= dart.notNull(x1)) { |
- let y0 = max(this.top, other.top); |
- let y1 = min(this.top['+'](this.height), other.top['+'](other.height)); |
- if (dart.notNull(y0) <= dart.notNull(y1)) { |
- return new (Rectangle$(T))(dart.as(x0, T), dart.as(y0, T), dart.as(dart.notNull(x1) - dart.notNull(x0), T), dart.as(dart.notNull(y1) - dart.notNull(y0), T)); |
+ let x0 = dart.dcall(max, this.left, other.left); |
+ let x1 = dart.dcall(min, this.left['+'](this.width), other.left['+'](other.width)); |
+ if (dart.notNull(dart.as(dart.dsend(x0, '<=', x1), core.bool))) { |
+ let y0 = dart.dcall(max, this.top, other.top); |
+ let y1 = dart.dcall(min, this.top['+'](this.height), other.top['+'](other.height)); |
+ if (dart.notNull(dart.as(dart.dsend(y0, '<=', y1), core.bool))) { |
+ return new (Rectangle$(T))(dart.as(x0, T), dart.as(y0, T), dart.as(dart.dsend(x1, '-', x0), T), dart.as(dart.dsend(y1, '-', y0), T)); |
} |
} |
return null; |
@@ -139,11 +139,11 @@ dart_library.library('dart/math', null, /* Imports */[ |
} |
boundingBox(other) { |
dart.as(other, Rectangle$(T)); |
- let right = max(this.left['+'](this.width), other.left['+'](other.width)); |
- let bottom = max(this.top['+'](this.height), other.top['+'](other.height)); |
- let left = min(this.left, other.left); |
- let top = min(this.top, other.top); |
- return new (Rectangle$(T))(dart.as(left, T), dart.as(top, T), dart.as(dart.notNull(right) - dart.notNull(left), T), dart.as(dart.notNull(bottom) - dart.notNull(top), T)); |
+ let right = dart.dcall(max, this.left['+'](this.width), other.left['+'](other.width)); |
+ let bottom = dart.dcall(max, this.top['+'](this.height), other.top['+'](other.height)); |
+ let left = dart.dcall(min, this.left, other.left); |
+ let top = dart.dcall(min, this.top, other.top); |
+ return new (Rectangle$(T))(dart.as(left, T), dart.as(top, T), dart.as(dart.dsend(right, '-', left), T), dart.as(dart.dsend(bottom, '-', top), T)); |
} |
containsRectangle(another) { |
return dart.notNull(this.left['<='](another.left)) && dart.notNull(this.left['+'](this.width)) >= dart.notNull(another.left) + dart.notNull(another.width) && dart.notNull(this.top['<='](another.top)) && dart.notNull(this.top['+'](this.height)) >= dart.notNull(another.top) + dart.notNull(another.height); |
@@ -187,10 +187,10 @@ dart_library.library('dart/math', null, /* Imports */[ |
super._RectangleBase(); |
} |
static fromPoints(a, b) { |
- let left = dart.as(min(a.x, b.x), T); |
- let width = dart.as(max(a.x, b.x)[dartx['-']](left), T); |
- let top = dart.as(min(a.y, b.y), T); |
- let height = dart.as(max(a.y, b.y)[dartx['-']](top), T); |
+ let left = dart.as(dart.dcall(min, a.x, b.x), T); |
+ let width = dart.as(dart.dcall(max, a.x, b.x)[dartx['-']](left), T); |
+ let top = dart.as(dart.dcall(min, a.y, b.y), T); |
+ let height = dart.as(dart.dcall(max, a.y, b.y)[dartx['-']](top), T); |
return new (Rectangle$(T))(left, top, width, height); |
} |
} |
@@ -210,15 +210,15 @@ dart_library.library('dart/math', null, /* Imports */[ |
MutableRectangle(left, top, width, height) { |
this.left = left; |
this.top = top; |
- this[_width] = dart.as(dart.notNull(width['<'](0)) ? _clampToZero(width) : width, T); |
- this[_height] = dart.as(dart.notNull(height['<'](0)) ? _clampToZero(height) : height, T); |
+ this[_width] = dart.as(dart.notNull(width['<'](0)) ? dart.dcall(_clampToZero, width) : width, T); |
+ this[_height] = dart.as(dart.notNull(height['<'](0)) ? dart.dcall(_clampToZero, height) : height, T); |
super._RectangleBase(); |
} |
static fromPoints(a, b) { |
- let left = dart.as(min(a.x, b.x), T); |
- let width = dart.as(max(a.x, b.x)[dartx['-']](left), T); |
- let top = dart.as(min(a.y, b.y), T); |
- let height = dart.as(max(a.y, b.y)[dartx['-']](top), T); |
+ let left = dart.as(dart.dcall(min, a.x, b.x), T); |
+ let width = dart.as(dart.dcall(max, a.x, b.x)[dartx['-']](left), T); |
+ let top = dart.as(dart.dcall(min, a.y, b.y), T); |
+ let height = dart.as(dart.dcall(max, a.y, b.y)[dartx['-']](top), T); |
return new (MutableRectangle$(T))(left, top, width, height); |
} |
get width() { |
@@ -227,7 +227,7 @@ dart_library.library('dart/math', null, /* Imports */[ |
set width(width) { |
dart.as(width, T); |
if (dart.notNull(width['<'](0))) |
- width = dart.as(_clampToZero(width), T); |
+ width = dart.as(dart.dcall(_clampToZero, width), T); |
this[_width] = width; |
} |
get height() { |
@@ -236,7 +236,7 @@ dart_library.library('dart/math', null, /* Imports */[ |
set height(height) { |
dart.as(height, T); |
if (dart.notNull(height['<'](0))) |
- height = dart.as(_clampToZero(height), T); |
+ height = dart.as(dart.dcall(_clampToZero, height), T); |
this[_height] = height; |
} |
} |
@@ -310,49 +310,49 @@ dart_library.library('dart/math', null, /* Imports */[ |
} |
dart.fn(max, core.num, [core.num, core.num]); |
function atan2(a, b) { |
- return Math.atan2(_js_helper.checkNum(a), _js_helper.checkNum(b)); |
+ return dart.as(Math.atan2(dart.dcall(_js_helper.checkNum, a), dart.dcall(_js_helper.checkNum, b)), core.double); |
} |
dart.fn(atan2, core.double, [core.num, core.num]); |
function pow(x, exponent) { |
- _js_helper.checkNum(x); |
- _js_helper.checkNum(exponent); |
- return Math.pow(x, exponent); |
+ dart.dcall(_js_helper.checkNum, x); |
+ dart.dcall(_js_helper.checkNum, exponent); |
+ return dart.as(Math.pow(x, exponent), core.num); |
} |
dart.fn(pow, core.num, [core.num, core.num]); |
function sin(x) { |
- return Math.sin(_js_helper.checkNum(x)); |
+ return dart.as(Math.sin(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(sin, core.double, [core.num]); |
function cos(x) { |
- return Math.cos(_js_helper.checkNum(x)); |
+ return dart.as(Math.cos(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(cos, core.double, [core.num]); |
function tan(x) { |
- return Math.tan(_js_helper.checkNum(x)); |
+ return dart.as(Math.tan(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(tan, core.double, [core.num]); |
function acos(x) { |
- return Math.acos(_js_helper.checkNum(x)); |
+ return dart.as(Math.acos(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(acos, core.double, [core.num]); |
function asin(x) { |
- return Math.asin(_js_helper.checkNum(x)); |
+ return dart.as(Math.asin(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(asin, core.double, [core.num]); |
function atan(x) { |
- return Math.atan(_js_helper.checkNum(x)); |
+ return dart.as(Math.atan(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(atan, core.double, [core.num]); |
function sqrt(x) { |
- return Math.sqrt(_js_helper.checkNum(x)); |
+ return dart.as(Math.sqrt(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(sqrt, core.double, [core.num]); |
function exp(x) { |
- return Math.exp(_js_helper.checkNum(x)); |
+ return dart.as(Math.exp(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(exp, core.double, [core.num]); |
function log(x) { |
- return Math.log(_js_helper.checkNum(x)); |
+ return dart.as(Math.log(dart.dcall(_js_helper.checkNum, x)), core.double); |
} |
dart.fn(log, core.double, [core.num]); |
let _POW2_32 = 4294967296; |
@@ -363,13 +363,13 @@ dart_library.library('dart/math', null, /* Imports */[ |
if (dart.notNull(max) <= 0 || dart.notNull(max) > dart.notNull(_POW2_32)) { |
dart.throw(new core.RangeError(`max must be in range 0 < max ≤ 2^32, was ${max}`)); |
} |
- return Math.random() * max >>> 0; |
+ return dart.as(Math.random() * max >>> 0, core.int); |
} |
nextDouble() { |
- return Math.random(); |
+ return dart.as(Math.random(), core.double); |
} |
nextBool() { |
- return Math.random() < 0.5; |
+ return dart.as(Math.random() < 0.5, core.bool); |
} |
} |
_JSRandom[dart.implements] = () => [Random]; |
@@ -434,10 +434,10 @@ dart_library.library('dart/math', null, /* Imports */[ |
if (this[_hi] == 0 && this[_lo] == 0) { |
this[_lo] = 23063; |
} |
- this[_nextState](); |
- this[_nextState](); |
- this[_nextState](); |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
+ dart.dcall(this[_nextState]); |
+ dart.dcall(this[_nextState]); |
+ dart.dcall(this[_nextState]); |
} |
[_nextState]() { |
let tmpHi = 4294901760 * dart.notNull(this[_lo]); |
@@ -458,27 +458,27 @@ dart_library.library('dart/math', null, /* Imports */[ |
dart.throw(new core.RangeError(`max must be in range 0 < max ≤ 2^32, was ${max}`)); |
} |
if ((dart.notNull(max) & dart.notNull(max) - 1) == 0) { |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
return dart.notNull(this[_lo]) & dart.notNull(max) - 1; |
} |
let rnd32 = null; |
let result = null; |
do { |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
rnd32 = this[_lo]; |
- result = rnd32[dartx.remainder](max); |
+ result = dart.dcall(rnd32[dartx.remainder], max); |
} while (dart.notNull(rnd32) - dart.notNull(result) + dart.notNull(max) >= dart.notNull(_POW2_32)); |
return result; |
} |
nextDouble() { |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
let bits26 = dart.notNull(this[_lo]) & (1 << 26) - 1; |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
let bits27 = dart.notNull(this[_lo]) & (1 << 27) - 1; |
return (dart.notNull(bits26) * dart.notNull(_Random._POW2_27_D) + dart.notNull(bits27)) / dart.notNull(_Random._POW2_53_D); |
} |
nextBool() { |
- this[_nextState](); |
+ dart.dcall(this[_nextState]); |
return (dart.notNull(this[_lo]) & 1) == 0; |
} |
} |