Files
sdk/pkg/dev_compiler/test/codegen_expected/script.js
T
Leaf Petersen 6f73694bb7 Generate better code for '==', core.identical, and dart.test.
Avoid falling back to the dart.equal runtime helper where possible based on static types.  Also uses JS `==` or `===` in some cases.

Treat core.identical as a compiler intrinsic, based on type.

Make dart.test assume correct types, use dart.dtest for combined cast and nullability check only when required.

Fixes https://github.com/dart-lang/sdk/issues/29851
Fixes https://github.com/dart-lang/sdk/issues/29772
BUG=
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2926613003 .
2017-06-30 15:04:29 -07:00

23 lines
712 B
JavaScript

define(['dart_sdk'], function(dart_sdk) {
'use strict';
const core = dart_sdk.core;
const dart = dart_sdk.dart;
const dartx = dart_sdk.dartx;
const script = Object.create(null);
let ListOfString = () => (ListOfString = dart.constFn(core.List$(core.String)))();
let ListOfStringTovoid = () => (ListOfStringTovoid = dart.constFn(dart.fnType(dart.void, [ListOfString()])))();
script.main = function(args) {
let name = args[dartx.join](' ');
if (name === '') name = 'world';
core.print(dart.str`hello ${name}`);
};
dart.fn(script.main, ListOfStringTovoid());
dart.trackLibraries("script", {
"script.dart": script
}, null);
// Exports:
return {
script: script
};
});