antonm@google.com 8a68bcf033 Proper dispatch in the presence of optional arguments.
Formerly for the methods like foo([Optional] x, [Opional] y), the following
dispatcher was emitted:

foo([x = _null, y = _null]) {
  if (y === _null) {
    return _foo_1(x);  // WRONG!
  }
  if (x === _null) {
    return _foo_2();
  }
  return _foo_3(x, y);
}

Now correct code is emitted:

foo([x = _null, y = _null]) {
  if (y !== _null) {
    return _foo_1(x, y);
  }
  if (x !== _null) {
    return _foo_2(x);
  }
  return _foo_3();
}

TBR=podivilov@chromium.org
BUG=4487

Review URL: https://chromiumcodereview.appspot.com//10832300

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@10661 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-14 18:14:57 +00:00
2012-05-25 22:58:10 +00:00

This is the repository of the Dart programming language and its associated
tools, libraries, and samples.

For license information, please see LICENSE.

You can find more about Dart online at dartlang.org or code.google.com/p/dart.

Here's a brief guide to what's in here:

compiler/      dartc static analyzer
corelib/       core libraries (collections, built-ins...)
editor/        the Eclipse-based standalone Dart IDE
language/      language specification
lib/           libraries (dart2js compiler, html, isolate, json, math, ...)
runtime/       the Dart VM and code for running it as a standalone app
samples/       sample Dart programs 
tests/         automated tests
third_party/   external dependencies
tools/         build scripts, text editor support files, etc.
S
Description
No description provided
Readme BSD-3-Clause 1.4 GiB
Languages
Dart 84.6%
C++ 13%
Python 0.7%
JavaScript 0.5%
HTML 0.4%
Other 0.5%