Commit Graph

1132 Commits

Author SHA1 Message Date
turnidge@google.com 309d4efee7 Windows produces different output for __FUNCTION__. Canonicalize.
Review URL: http://codereview.chromium.org//8524006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1423 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 19:48:55 +00:00
turnidge@google.com ff7a5f4786 Try __func__ -> __FUNCTION__
Review URL: http://codereview.chromium.org//8515007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1420 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 19:34:54 +00:00
turnidge@google.com 43e5bf131b Give up on using va_copy for now and get the build working.
Review URL: http://codereview.chromium.org//8469004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1418 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 19:29:02 +00:00
turnidge@google.com bd63578bb4 Include <stdarg.h>
Review URL: http://codereview.chromium.org//8524004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1416 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 19:18:25 +00:00
turnidge@google.com 47dff8904d Here's a template for how I plan on doing error-checking on inputs for
dart api functions.

Any comments before I change everything?

Any way I could get away without creating the extra Object handle by
doing sneaky tricks?
Review URL: http://codereview.chromium.org//8507035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1415 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 19:10:53 +00:00
regis@google.com a6282231eb Revert r1380 that is breaking frog.
Review URL: http://codereview.chromium.org//8509031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1382 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 01:39:06 +00:00
regis@google.com 8dd26ba9f6 Finalize all classes (fix issue 364).
Review URL: http://codereview.chromium.org//8506001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1380 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-09 23:33:48 +00:00
turnidge@google.com 04d38885a3 Renaming:
Dart_ObjectToString -> Dart_ToString
Dart_Objects_Equal -> Dart_ObjectEquals
Dart_IsInstanceOf -> Dart_ObjectIsType
Dart_ReThrowException -> Dart_RethrowException

Added:

Dart_IsSame: === operation

Added a couple of tests.
Review URL: http://codereview.chromium.org//8490016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1326 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-08 19:18:22 +00:00
turnidge@google.com 9a3434cd17 Allow printf-style arguments for Dart_Error and Api::Error.
Convert one error message to use the new facility for testing
purposes.  The rest of the errors will be improved in follow-on
changes.

Add tests.

Minor comment fixes in dart_api_impl.h.
Review URL: http://codereview.chromium.org//8492015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1276 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-08 00:12:59 +00:00
turnidge@google.com 9a118fbb49 Add Dart_Null, Dart_True, and Dart_False.
Fix Dart_NewPersistentHandle so it won't break if passed one of these
persistent handles.

Reviewer: Should I document that these new functions return a
persistent handle?
Review URL: http://codereview.chromium.org//8446009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1230 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-05 00:09:36 +00:00
cshapiro@google.com 007e9c3cae Allow allocation of four byte strings through the Dart API.
Review URL: http://codereview.chromium.org//8474014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1229 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 23:41:58 +00:00
asiva@google.com 8743e1cc2a - Fix the snapshot generation python script to return an error code when snapshot generation fails and print the error message.
- Split isolate creation into CreateIsolate and InitializeIsolate so that we don't get SEGVs when there is a failure compiling the corelib dart sources during the bootstrap process
Review URL: http://codereview.chromium.org//8334031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1225 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 22:08:13 +00:00
ager@google.com 68166663f9 Renaming Array -> List in the VM API.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8372094

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1195 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 12:25:53 +00:00
turnidge@google.com d7c536d677 Reorganize dart_api.h and add a bunch of documentation.
Review URL: http://codereview.chromium.org//8343045

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1034 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 18:11:36 +00:00
asiva@google.com b94e5d20ad Enhance the array access API to deal with any objct that implements the list interface.
A future change will consider making the growable array a first class VM object so that access to growable array would be more efficient through the API.
Review URL: http://codereview.chromium.org//8417003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@972 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 21:08:39 +00:00
asiva@google.com 8e2f6361f1 When generating snapshots for a specified script don't include the builtin library by default. The DOM snap shot for instance does not want the builtin library. If the builtin library is needed it needs to be explicitly imported in the specified script.
Review URL: http://codereview.chromium.org//8343071

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@971 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 20:53:44 +00:00
turnidge@google.com 45ab0f6d65 DART_CHECK_VALID -- abort on an invalid handle.
EXPECT_VALID -- check handle validity in unit tests.
Review URL: http://codereview.chromium.org//8401010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@970 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 20:18:07 +00:00
turnidge@google.com e756497a78 Refactor the dart api a bit:
- Dart_Result is gone.  Dart_Handle mostly replaces it.
- Name/signature changes
  - IsValidResult -> IsValid
  - GetErrorCString -> GetError
  - many more...
- Make details of persistent handle freelist private.
- Add persistent "True" handle to api state.

Things I am not doing in this changelist:

- Documentation updates
Review URL: http://codereview.chromium.org//8380020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@778 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-26 20:38:41 +00:00
ager@google.com 86284155b9 Improve error handling in the process library.
Verify that the arguments have the types expected by the
implementation. Require a List instance containing builtin
Strings as the arguments. Require a builtin String path.

R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8383037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@690 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-25 12:16:04 +00:00
turnidge@google.com 0caed71c26 Add Dart_GetNativeArgumentCount() and a test.
Review URL: http://codereview.chromium.org//8382017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@667 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-24 23:44:29 +00:00
asiva@google.com 61a641bdcf Add an imported into list for libraries so that it is possible to lookup
the local scope at the imported site in order to check if a variable is already
defined.

Added a check for duplicate definitions during class finialization which
checks for duplicate definitions.
Review URL: http://codereview.chromium.org//8342046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@593 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-20 23:29:06 +00:00
turnidge@google.com 966fb86442 Minimal change to get win32 build working again.
Review URL: http://codereview.chromium.org//8352014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@568 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 19:13:55 +00:00
turnidge@google.com 368f37895f Use the distinguished class, ApiFailure, to signal when a Dart_Result is
invalid.

We eventually plan to drop the Dart_Result type entirely, but this change allows us to try out the functionality before we munge the user-visible api.
Review URL: http://codereview.chromium.org//8334009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@566 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 18:41:33 +00:00
antonm@google.com 9b8e11cb61 Setup necessary zones.
Review URL: http://codereview.chromium.org//8342039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@558 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 16:40:50 +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
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
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
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
srdjan@google.com b0af113468 Address Siva's suggestion.
Review URL: https://chromereviews.googleplex.com/3546013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@97 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 07:46:45 +00:00
srdjan@google.com 665b268641 Fix Dart_InvokeDynamic api to handle the null receiver properly: call Object's methods (e.g., "toString", "noSuchMethod").
Review URL: https://chromereviews.googleplex.com/3525014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@48 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 16:27:07 +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