lrn@google.com
9f32f0674a
Add "contains" method to Collection.
...
This versions does not implement "contains" on DOM lists.
Review URL: https://codereview.chromium.org//11195039
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13806 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-19 06:58:19 +00:00
lrn@google.com
ae9664a9cc
Revert "Add "contains" method to Collection."
...
Review URL: https://codereview.chromium.org//11186045
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13769 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-18 10:55:02 +00:00
lrn@google.com
c3c2ae61c6
Add "contains" method to Collection.
...
Also added a Sequence interface to capture things with a length and
integer indexing. List and String implement that interface, and
there is a base skeleton class for collections that are Sequences.
BUG=1030
Review URL: https://codereview.chromium.org//11169004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13766 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-18 08:48:11 +00:00
lrn@google.com
5a4236c0af
Change sort on scalar arrays to take optional comparison function.
...
TBR=floitsch@google.com
Review URL: https://codereview.chromium.org//11186017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13720 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-17 08:05:49 +00:00
lrn@google.com
cd5be325f8
Make argument of List.sort optional with default Comparable.compare.
...
BUG=1235
Review URL: https://codereview.chromium.org//11144016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13718 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-17 07:39:12 +00:00
tball@google.com
2cd8436c5a
Changed StackZone and ApiZone to be containers for Zone.
...
BUG=
Review URL: https://codereview.chromium.org//11028145
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13707 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-16 22:05:40 +00:00
regis@google.com
adb534674c
Change core lib, dart2js, and more for new optional parameters syntax and semantics (new semantics is not enforced yet).
...
Review URL: https://codereview.chromium.org//11090016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13684 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-16 16:03:47 +00:00
iposva@google.com
90b7c3f801
Fix bug 5002:
...
- Add the necessary Dart_EnterScope/Dart_ExitScope calls to
the mirror native code.
Review URL: https://codereview.chromium.org//11141020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13648 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-15 08:05:02 +00:00
hausner@google.com
1811a6b913
Support for type dynamic in VM
...
Old name Dynamic is supported, and automatically converted to
lower-case dynamic when parsed.
VM flag --warn_legacy_dynamic prints warnings when Dynamic
is found.
Review URL: https://codereview.chromium.org//11125005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13637 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-12 22:40:24 +00:00
asiva@google.com
1bf642129d
- Get rid of RawClosure class and use RawInstance for closures.
...
- Simplify SetRaw to not require an access to the Current Isolate.
Review URL: https://codereview.chromium.org//11087070
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13581 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-11 20:34:08 +00:00
lrn@google.com
fbc14bdfdb
Fix bug in ByteArray.subByteArray implementation for omitted length.
...
If length is omitted, it defaulted to the length of the byte array,
even if the start was greater than zero. It now subtracts the start
from the length to get "the length of the rest of the byte array".
Review URL: https://codereview.chromium.org//11098065
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13522 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-11 08:26:01 +00:00
srdjan@google.com
5158c55cce
Trace intrinsified native calls for doubles.
...
Review URL: https://codereview.chromium.org//11087061
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13494 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 20:15:48 +00:00
regis@google.com
06aa06f542
Include method name in NoSuchMethodError.toString().
...
Review URL: https://codereview.chromium.org//11092014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13382 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 23:21:16 +00:00
ager@google.com
70216ab4cd
Hide internal details of VM string implementation.
...
R=lrn@google.com ,srdjan@google.com
BUG=
Review URL: https://codereview.chromium.org//11035057
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13352 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 13:00:33 +00:00
efortuna@google.com
2262eaa5ed
Reapply r13292 WITH a fix to dartc test status for apply_test.dart
...
Review URL: https://codereview.chromium.org//11035069
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13335 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:42:27 +00:00
efortuna@google.com
461f7fb95e
Revert r13292. This is when the first failure showed up on dartc, but dartc
...
didn't actually turn red. Investigating why.
Review URL: https://codereview.chromium.org//11081002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13330 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:05:20 +00:00
tball@google.com
76d7c9b105
Renamed Zone->StackZone, BaseZone->Zone, in preparation for changing isolate->get_zone() to return what was called the BaseZone instead of its wrapper. The GetBaseZone() methods were not renamed, to help the next CL.
...
BUG=
Review URL: https://codereview.chromium.org//11040062
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13314 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 19:52:55 +00:00
lrn@google.com
181dc5d3b4
Add apply method signature to Function class.
...
This does not include an implementation for any backend. The
current implementation throws a NotImplementedException when
called.
BUG=5419
Review URL: https://codereview.chromium.org//11027059
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13292 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 12:57:51 +00:00
regis@google.com
1b8e614d7d
Change compile-time errors into dynamic errors in instance creation expression
...
(issue 3085).
Change compile-time errors into dynamic errors in static getter and setter
calls (issues 3088, 3094).
Fix a crash in flow graph builder for missing static getter (issue 4360).
Add support in VM for NoSuchMethodError.
Remove support in VM for StaticResolutionException.
Add, remove, update related language tests.
Triage related co19 tests.
Review URL: https://codereview.chromium.org//11049038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13208 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 00:15:38 +00:00
ager@google.com
35e073bf80
Minor style and comment fixes from review comments.
...
R=iposva@google.com
BUG=
Review URL: https://codereview.chromium.org//11024002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13161 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 08:08:34 +00:00
ager@google.com
7ce8d31093
Cleaning up in VM number hierarchy which was exposing a bunch
...
of implementation details as public methods.
The only remaining thing is that int and double have a pow
method in the VM which is not officially a part of corelib.
Maybe it should be so I have left that out of this change
and maybe we should add it to num and implement in dart2js
too?
R=sgjesse@google.com ,lrn@google.com
BUG=
Review URL: https://codereview.chromium.org//11019011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13066 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-01 13:31:18 +00:00
lrn@google.com
6f2cf94aa8
Rename CastException to CastError.
...
Review URL: https://codereview.chromium.org//10977078
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13009 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-28 12:13:58 +00:00
ager@google.com
abee5139e5
Reapply change to hide VM-only List implementation classes.
...
The performance issue was that I had not updated the method
recognizer.
BUG=
Review URL: https://codereview.chromium.org//10990083
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13003 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-28 11:08:38 +00:00
iposva@google.com
b85f604f66
- Implement first class types in the VM.
...
- Make AbstractType a subclass of Instance and map it and its subclasses
to private Dart classes in dart:core implementing the Type interface.
- Avoid dispatching through statics in Object if not strictly needed.
Review URL: https://codereview.chromium.org//10979058
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12981 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-27 21:19:00 +00:00
ager@google.com
fe66a0af1a
Revert hiding of VM-only coreimpl list implementation types. While I
...
investigate performance regression (even after fixing constructors
in the intrinsifier).
R=iposva@google.com ,srdjan@google.com ,fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//11000025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12963 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-27 14:07:56 +00:00
ager@google.com
8e6a2c8345
Hide VM-only coreimpl List implementation types. These should not be
...
exposed as visible parts of coreimpl.
Review URL: https://codereview.chromium.org//10990055
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12952 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-27 12:37:30 +00:00
lrn@google.com
ae0d6fca62
Ensure that hashCode and runtimeType work on null.
...
BUG=5510
Review URL: https://codereview.chromium.org//10979050
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12948 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-27 11:38:16 +00:00
ager@google.com
81e81825c9
Make data setter private on GrowableObjectArray.
...
There is no data setter on Lists. Additionally, this allows to
create buffer overflows.
R=vegorov@google.com ,iposva@google.com
BUG=
Review URL: https://codereview.chromium.org//10982045
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12941 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-27 06:21:07 +00:00
ager@google.com
7977b42215
Update all occurrences of raw strings.
...
R=hausner@google.com ,kasperl@google.com
BUG=
Review URL: https://codereview.chromium.org//10977027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12893 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-26 06:01:23 +00:00
lrn@google.com
a1faa6f135
Change IllegalArgumentException to ArgumentError.
...
Review URL: https://codereview.chromium.org//10989013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12841 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-25 12:27:52 +00:00
srdjan@google.com
7e0a30ee00
Remove unnecessary throws in growablearray.
...
Review URL: https://codereview.chromium.org//10987004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12815 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-24 22:37:03 +00:00
kmillikin@google.com
c70bcfcfa3
Support constant folding of instructions with constant smi values.
...
In sparse conditional constant propagation, replace instructions with
constant smi values with their constant value. Extend the analysis to
understant shift and bitwise binary operations.
R=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//10968058
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12778 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-24 13:14:54 +00:00
ager@google.com
02b566ee62
Add documentation to the Object class in the core library.
...
R=lrn@google.com
BUG=
Review URL: https://codereview.chromium.org//10974004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12770 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-24 11:07:34 +00:00
iposva@google.com
eee4bbc1ef
- Add definition of "int hashCode()" to Object.
...
- Implement hashCode in the VM.
- Mark hashCode as unimplemented in dart2js.
- Update test using the identity hashcode.
Review URL: https://codereview.chromium.org//10956026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12669 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-21 00:32:58 +00:00
lrn@google.com
c0f42d2748
Made removeAt errors consistent between dart2js and VM.
...
Reneabled test for VM.
Review URL: https://codereview.chromium.org//10960011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12632 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-20 12:52:54 +00:00
lrn@google.com
eeeab5f0ad
Add list.removeAt method.
...
Review URL: https://codereview.chromium.org//10970009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12627 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-20 10:50:00 +00:00
kmillikin@google.com
67021511ca
Make some static helpers into member functions.
...
Four helper functions that moved from lib/integers.cc to vm/object.cc so
they could be used during constant folding are more properly member
functions than static functions.
R=srdjan@google.com
BUG=
Review URL: https://codereview.chromium.org//10937030
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12620 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-20 08:38:33 +00:00
ager@google.com
e676e88f81
Introduce a VM-only dart:scalarlist library for byte arrays.
...
Include it in the SDK so users can use it. Create a dummy
implementation and patch file for the library for dart2js so it can be
documented. Johnni, can you think of a nicer way of making
documentation generation work for a VM only library? Also, it seems that
patching kills the documentation comments and they do not show up in
the generated docs.
R=iposva@google.com ,johnniwinther@google.com
BUG=
Review URL: https://codereview.chromium.org//10919267
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12616 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-20 07:08:10 +00:00
ahe@google.com
3f1932a563
Handle backslashes and newlines when escaping strings.
...
Review URL: https://codereview.chromium.org//10943027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12568 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 15:43:41 +00:00
ager@google.com
576532edcc
Bug cleanup: unify on allowing radices from 2 to 36 in
...
num.toRadixString. Add test and documentation.
R=lrn@google.com ,floitsch@google.com
BUG=dartbug.com/461
Review URL: https://codereview.chromium.org//10937011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12562 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 14:15:39 +00:00
kmillikin@google.com
be0492a8a8
Reapply "Initial implementation of sparse conditional constant propagation."
...
With a fix for compilation on Mac. GrowableArray is DISALLOW_COPY_AND_ASSIGN,
so we can't create a temporary one to be ignored and have to pass one in to be
ignored.
R=fschneider@google.com ,zerny@google.com
BUG=
Review URL: https://codereview.chromium.org//10949020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12561 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 14:10:14 +00:00
kmillikin@google.com
5e449aea52
Revert "Initial implementation of sparse conditional constant propagation."
...
Revert due to compilation failures on Mac.
TBR=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//10946027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12552 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 11:04:36 +00:00
kmillikin@google.com
ae9efbfab0
Initial implementation of sparse conditional constant propagation.
...
Use the results of SCC to eliminate unreachable code.
BUG=
Review URL: https://codereview.chromium.org//10943007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12549 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 10:34:14 +00:00
ahe@google.com
d0f3e48063
Work around for bug 4995 to unbreak VM build.
...
Review URL: https://codereview.chromium.org//10947026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12541 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 09:00:38 +00:00
ahe@google.com
34c503ae73
Don't invoke user-defined code in NoSuchMethodError.toString.
...
Review URL: https://codereview.chromium.org//10939020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12533 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-19 07:55:50 +00:00
iposva@google.com
820d2b33d5
- Fix the implementation of Random.nextBool() and add test.
...
Review URL: https://codereview.chromium.org//10919323
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12458 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-17 21:33:39 +00:00
lrn@google.com
26fab5183a
Move parseInt parseDouble to int/double classes as a static method.
...
Remove math dependency from core/coreimpl in dart2js.
The existing Math.parseInt and Math.parseDouble are kept *for now*, but
simply redirect to the static methods.
They will be removed in time (when library code is ready for it).
Review URL: https://codereview.chromium.org//10913271
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12417 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-17 07:25:38 +00:00
cshapiro@google.com
ffa3604282
Eliminate the const constructor from the Expando class.
...
Review URL: https://codereview.chromium.org//10909209
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12354 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 21:26:01 +00:00
turnidge@google.com
a28d475ff3
Implement more of the mirrors library, primarily stuff to do with types.
...
Highlights:
- Implement FunctionClassMirror, used to reflect on the class of
function objects.
- Implement TypeVariableMirror, used to reflect on type variables.
- Implement TypedefMirror, used to reflect on typedefs.
- Implement returnType for MethodMirror
- Implement type for VariableMirror/ParameterMirror
- Added supporting functions to the dart embedding api:
- Dart_ClassIsTypedef
- Dart_ClassGetTypedefReferent
- Dart_ClassIsFunctionClass
- Dart_ClassGetFunctionClassSignature
- Dart_FunctionReturnType
- Dart_FunctionParameterType
- Dart_VariableType
- Dart_GetTypeVariableNames
- Dart_LookupTypeVariable
- Dart_IsTypeVariable
- Dart_TypeVariableOwner
- Dart_TypeVariableUpperBound
Other stuff:
- Fixed bug in Function::NumberOfImplicitParameters for signature
functions.
- Chnaged the default upper bound for type variables to Object from
Dynamic. Discussed this with Gilad and Regis.
- Fixed some smaller problems in mirrors_impl.dart.
Review URL: https://chromiumcodereview.appspot.com//10916252
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12342 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 17:47:25 +00:00
iposva@google.com
2f455ce6a4
- Move double and int implementations into dart:core and make them private.
...
Review URL: https://codereview.chromium.org//10918213
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12330 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 14:13:55 +00:00