srdjan@google.com
6a0e00c33c
Fix crashes in String natives.
...
Review URL: http://codereview.chromium.org//8455004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1199 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 15:00:04 +00:00
srdjan@google.com
0265e3f027
Fixes to co19 crashes:
...
- Null is a valid exception object.
- Throw exception in array copy.
Review URL: http://codereview.chromium.org//8437106
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1173 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 22:31:32 +00:00
iposva@google.com
97634fb30e
- Add the implementation of the Options interface to the runtime.
...
Review URL: http://codereview.chromium.org//8437075
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1169 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 21:45:03 +00:00
srdjan@google.com
49caedb014
Fix issue: 5427703 (compareTo), fix parsing of -0.0.
...
Review URL: http://codereview.chromium.org//8430037
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1156 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 18:03:39 +00:00
ngeoffray@google.com
a76068abeb
Remove unused constructor.
...
Review URL: http://codereview.chromium.org//8440062
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1138 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 10:09:06 +00:00
hausner@google.com
7651034e9e
Two-phase constructors
...
This CL fixes the initializer evaluation order and brings the VM fully up to spec.
Constructors are executed in two phases: the initializer phase and the constructor body phase. An additional implicit parameter tells the constructor code whether to execute the initializer list or the body (or both).
If the super initializer call is not at the end of the initializer list, the super constructor has to be called twice. The arguments to the super initializer have to be evaluated and stored in temporary local variables. At the beginning of the constructor block, a second implicit super call is inserted.
If the super initializer call happens to be at the end of the list, none of this madness has to happen, except for the extra implicit parameter to the constructor.
Review URL: http://codereview.chromium.org//8440014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1102 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 17:19:15 +00:00
ager@google.com
5b5c36e253
Implement async file API on top of isolates.
...
This is not going to be efficient but will give us the right
semantics of the operations. We should be using native async
operations for this.
Fixed a bug in VM implementation of List.setRange.
R=sgjesse@google.com
BUG=
TEST=
Review URL: http://codereview.chromium.org//8431028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1012 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 14:07:30 +00:00
srdjan@google.com
6d8d978d5a
FIx issue 261: throw exception if index if idnexed oeprators if lists Array and GrowableArray is not int.
...
Review URL: http://codereview.chromium.org//8387035
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@962 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 18:40:32 +00:00
ngeoffray@google.com
5496005d1d
Add optional arguments to our indexOf/lastIndexOf methods.
...
Review URL: http://codereview.chromium.org//8424012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@947 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 13:21:30 +00:00
ngeoffray@google.com
210fd33d0a
Remove List.fromList constructor, and List.copyFrom. They are duplicates of the new range methods.
...
Review URL: http://codereview.chromium.org//8422005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@941 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 09:49:15 +00:00
regis@google.com
78353be760
Verify that user classes/interfaces do not extend/implement any of bool, num,
...
int, double, String, Function, or Dynamic.
Review URL: http://codereview.chromium.org//8416052
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@922 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 22:24:18 +00:00
asiva@google.com
b245c234f0
Report NullPointerException when we try to construct a regular expression
...
using a NULL pointer.
Report NullPointerException instead of ObjectNotClosureException when the
closure object is Null.
Review URL: http://codereview.chromium.org//8363034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@901 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 17:32:29 +00:00
srdjan@google.com
8d69118676
More strict non-equal cleanups in library code
...
Review URL: http://codereview.chromium.org//8413018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@892 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 15:21:42 +00:00
srdjan@google.com
959f4b519d
Use strict equality when comparing with null, especially when null is a default value.
...
Review URL: http://codereview.chromium.org//8400038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@859 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 22:11:16 +00:00
vsm@google.com
f3463fcb44
Remove obsolete isolate bind method
...
This has been removed from corelib and compiler. See
http://codereview.chromium.org//8370031 .
Review URL: http://codereview.chromium.org//8399025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@800 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 05:03:23 +00:00
regis@google.com
1df8ca858e
Rename the VM internal 'var' type to 'Dynamic' type.
...
This change does not implement support for the built-in identifier 'Dynamic'.
Review URL: http://codereview.chromium.org//8403003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@779 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-26 20:58:34 +00:00
ngeoffray@google.com
592e3848a3
Implement String.contains when the pattern is not a string.
...
Review URL: http://codereview.chromium.org//8379001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@676 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-25 06:56:15 +00:00
cshapiro@google.com
f52039f03c
Implement case mapping using the Unicode default case mapping algorithm.
...
BUG=5425968
Review URL: http://codereview.chromium.org//8333001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@616 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-21 20:33:29 +00:00
iposva@google.com
4906ccd1db
- Remove the remaining Array interface.
...
Review URL: http://codereview.chromium.org//8348025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@556 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 15:44:55 +00:00
turnidge@google.com
0e98d4ae64
Allow embedders to provide custom message delivery for an isolate.
...
==============
Added Dart_SetPostMessageCallback and Dart_SetClosePortCallback.
These allow the embedder to provide custom message/port behavior
for their application. The vm provides standard implementations
that work with the standard run loop.
Added Dart_HandleMessage, which processes one message on the
current isolate. Embedders can use this to write their own
message processing loops. Rewrote code to use this internally.
Added Isolate::StandardRunLoop() to share code between
Dart_RunLoop and lib/isolate.cc
Changed the interface to PortMap::PostMessage. PostMessage is
now agnostic to message delivery mechanism. Note that PortMap is
now out of the "ReceiveMessage" business entirely. Moved
MessageQueue and friends out to message_queue.cc/h.
Moved the monitor from the Isolate into the MessageQueue. No
need for outsiders to mess. Added MessageQueue::Wait. Moved
monitor locking from PortMap into MessageQueue itself, which was
easier for me to reason about. Wrote some tests.
Removed PortMessage::Handle. The code turned into Dart_HandleMessage.
Regularized the nomenclature around ports. Type is now always
Dart_Port instead of intptr_t. Variables end in _port instead of
_id. Use the term "dest" instead of "target" or "send".
Added a family of new tests to port_test.
Added EXPECT_NE to the test framework.
Review URL: http://codereview.chromium.org//8297004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@516 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 17:54:07 +00:00
ngeoffray@google.com
ac91a5a8da
Fix build failures due to forgotten change in the Array -> List transition.
...
Review URL: http://codereview.chromium.org//8333017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@508 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 10:54:45 +00:00
ngeoffray@google.com
70c01beb9b
Clean up (most) uses of Array. Still more to come in the VM corelib code base.
...
Review URL: http://codereview.chromium.org//8321024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@507 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 10:02:59 +00:00
vsm@google.com
cc71ad71ed
Test fix: remove extraneous print
...
TEST=corelib/ListInsertRangeTest
Review URL: http://codereview.chromium.org//8294020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@483 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 20:18:45 +00:00
regis@google.com
dc895f3138
Rename class AssertError to AssertionError in the VM (fix issue 119).
...
Move VM specific tests to the correct tests directory.
Enable asserts in the VM when type checks are enabled.
Review URL: http://codereview.chromium.org//8294005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@460 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 22:02:50 +00:00
ngeoffray@google.com
52aa068f73
Implement List.insertRange.
...
Review URL: http://codereview.chromium.org//8271029
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@439 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 13:44:18 +00:00
benl@google.com
c0a59669cf
Do away with the PromiseQueue.
...
Instead of queuing messages with promises in them until the promises
are ready, send immediately. This is done by sending a port down which
the receiver sends a port which can be used to signal completion of
the outgoing promise.
Review URL: https://chromereviews.googleplex.com/3573013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@427 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 11:18:12 +00:00
ngeoffray@google.com
85804080f3
Implement List.getRange.
...
Review URL: http://codereview.chromium.org//8276005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@403 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 16:24:09 +00:00
ngeoffray@google.com
9e03f7c985
IllegalArgumentException expects a string.
...
Review URL: http://codereview.chromium.org//8277007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@402 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 16:19:06 +00:00
ngeoffray@google.com
b69b4200c8
Implement removeRange, and update some documentation on the list interface.
...
Review URL: http://codereview.chromium.org//8273004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@400 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 15:54:48 +00:00
ngeoffray@google.com
edcae54a2c
Implement setRange on DartC and the VM.
...
Review URL: https://chromereviews.googleplex.com/3574018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@394 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 12:58:49 +00:00
asiva@google.com
fdb5d9a607
Fix compilation warnings/errors seen with newer versions of gcc compiler.
...
Review URL: http://codereview.chromium.org//8222017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@321 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 00:37:11 +00:00
mmendez@google.com
fc7390d97b
Add support for --enable_type_checks (developer mode) for dartc.
...
This patch is based on https://chromereviews.googleplex.com/3520019/ . However it addresses the following issues:
1) TypeError exceptions will now have the stack trace filled in.
2) Type parameters are now accessible from closurized code, including the trampoline shims for named optinal parameters.
3) Suppress use of FunctionExpressionInliner with type checks because the inline normalization can leave return nodes in the AST.
4) Pass the generateHumanReadableOutput flag to the closure backend.
5) TypeDartcTest passes in debug and release modes with type checking enabled. We still need to enable the additional cases in the code.
Review URL: https://chromereviews.googleplex.com/3558021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@271 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-08 04:11:34 +00:00
ngeoffray@google.com
8b8b4844fa
Add default arguments for regexp flags.
...
Review URL: https://chromereviews.googleplex.com/3558016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@213 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 12:47:56 +00:00
kasperl@google.com
1a3e9c39b1
Make replyTo argument optional in SendPort.send.
...
R=benl@google.com
BUG=
TEST=
Review URL: https://chromereviews.googleplex.com/3561014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@207 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 10:44:50 +00:00
ngeoffray@google.com
d4c8bacc2d
substringToEnd does not exist anymore.
...
Review URL: https://chromereviews.googleplex.com/3575012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@203 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:48:12 +00:00
ngeoffray@google.com
c2b5e488da
Remove substringToEnd.
...
Review URL: https://chromereviews.googleplex.com/3561013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@201 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:41:38 +00:00
ngeoffray@google.com
cb3a9f6641
Add range methods to List. Throw not implemented for now.
...
Review URL: https://chromereviews.googleplex.com/3573012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@198 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 07:56:42 +00:00
cshapiro@google.com
9aca46d2a7
Implement support for reading and writing UTF-8 encoded strings.
...
In the past, characters in C strings were assumed to encode themselves
and when converting Dart strings to C strings characters were narrowed
to 8-bit values.
With this change, C strings are assumed to be UTF-8 encoded.
Converting a C string to a Dart string applies UTF-8 decoding and
converting a Dart string to a C string applies UTF-8 encoding.
Also part of this change are new methods to construct uninitialized
string objects and to copy string data.
BUG=5343358
Review URL: https://chromereviews.googleplex.com/3557012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@169 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:42:24 +00:00
regis@google.com
db3a736c33
Support optional named arguments at the dart_entry level in the VM.
...
Fix bug 5422033: Const expressions don't work with named arguments.
Review URL: https://chromereviews.googleplex.com/3552015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@168 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:40:45 +00:00
regis@google.com
b618447392
Inline condition type check.
...
Review URL: https://chromereviews.googleplex.com/3534018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@166 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:35:01 +00:00
asiva@google.com
0b30a49971
5419598: Add a setjmp around the isolate spawning code so that parse errors
...
are caught and reported as errors.
5417103: Add a setjmp around Dart_Run_Loop so that parse errors
are caught and reported as errors.
Review URL: https://chromereviews.googleplex.com/3553012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@140 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 18:33:36 +00:00
floitsch@google.com
ad89e94d67
Fix bad merge.
...
Unbreaks build.
TBR=ngeoffray
R=ngeoffray@google.com
BUG=
TEST=
Review URL: https://chromereviews.googleplex.com/3542013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@128 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 15:04:55 +00:00
floitsch@google.com
1229e5b8db
Implement Date.weekday.
...
Review URL: https://chromereviews.googleplex.com/3541012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@125 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 14:47:41 +00:00
floitsch@google.com
410583d73d
Get rid of duration in TimeZone class.
...
Review URL: https://chromereviews.googleplex.com/3538012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@124 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 14:35:56 +00:00
floitsch@google.com
382580f9a7
Rename Time to Duration and adapt methods.
...
Review URL: https://chromereviews.googleplex.com/3536013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@121 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 14:21:57 +00:00
floitsch@google.com
15727ed074
Rename DateTime to Date.
...
Review URL: https://chromereviews.googleplex.com/3529013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@107 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 10:14:49 +00:00
floitsch@google.com
98d704a3cb
Remove Date class and remove .time from DateTime.
...
Review URL: https://chromereviews.googleplex.com/3508024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@103 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 09:20:30 +00:00
dgrove@google.com
4c0f559d23
Initial checkin.
...
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 05:20:07 +00:00