Commit Graph

3172 Commits

Author SHA1 Message Date
ager@google.com 7e4a36278f Implement File.directory() and File.directorySync() to get
containing directory for a file.

BUG=dart:1618
TEST=standalone/FileTest

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4464 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-22 16:18:39 +00:00
sgjesse@google.com 46e44ecba1 Add both sync and async methods for getting streams for a File
The File class used to have two synchronous methods
openInputStream and openOutputStream for getting streams for a
file. These have now been changed to work asynchronously by the
associated callback inputStreamHandler or outputStreamHandler
when the stream is opened and available.

To support the synchronous API two new methods
openInputStreamSync and openOutputStreamSync which returns the
stream directly as before have been added.

The actual implemnetation of the file streams still uses the
synchronous file API internally. However this change
adds "simulated" handling of noPendingWriteHandler and
closeHandler for file output stream.

R=ager@google.com

BUG=dart:1784

TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4452 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-22 14:11:04 +00:00
iposva@google.com a68ea7e455 - Windows only: Move the BN library link dependency into the standalone binaries.
Review URL: https://chromiumcodereview.appspot.com//9433021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4416 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-22 00:36:14 +00:00
sgjesse@google.com 18df1964f7 Fix bug from r4390 on Windows
The file handler did not pass the full path.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4391 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 13:29:52 +00:00
sgjesse@google.com 9390f1577a Run all directory async operations on a separate thread using native ports
R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4390 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 11:35:42 +00:00
sgjesse@google.com f02c9e45d6 Add utility functions for creating and accessing Dart_CObject structures
All allocation is done using Dart_ScopeAllocate, so no explicit feeing
is required. This also means that these utilities require an active
ApiZone.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4388 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 08:59:41 +00:00
ager@google.com e2c233c750 Disallow opening of directories as files.
R=sgjesse@google.com
BUG=1614
TEST=tests/standalone/src/FileTest.dart

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4387 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 07:22:20 +00:00
iposva@google.com 9dc3d0f49d - Add dart:json, dart:uri and dart:utf8 to the known and builtin libraries.
- Unify and simplify the building of the creation of the source file.
Review URL: https://chromiumcodereview.appspot.com//9417012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4336 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-16 19:59:19 +00:00
turnidge@google.com 5c9dbe6a05 Revert my last change. Windows dislikes long strings...
Review URL: https://chromiumcodereview.appspot.com//9407017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4281 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-15 19:25:22 +00:00
turnidge@google.com 7177dce4e9 Make gen files more human-readable by using a string initializer
instead of an integer array initializer.

For example, the initializer in builtin_gen.cc now looks something like this:

const char Builtin::builtin_source_[] =
 
  // ----- bin/builtin.dart -----

  "// Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file\n"
  "// for details. All rights reserved. Use of this source code is governed by a\n"
  "// BSD-style license that can be found in the LICENSE file.\n"
  "\n"
  "#library(\"builtin\");\n"
  "#import(\"dart:nativewrappers\");\n"
  "#import(\"dart:coreimpl\");\n"
  "\n"
  "void print(arg) {\n"
  "  _Logger._printString(arg.toString());\n" /* L10 */
  "}\n"
  "\n"
  "void exit(int status) {\n"
  "  if (status is !int) {\n"
  "    throw new IllegalArgumentException(\"int status expected\");\n"
  "  }\n"
  "  _exit(status);\n"
  "}\n"
  "\n"
  "_exit(int status) native \"Exit\";\n" /* L20 */
  "\n"
  "class _Logger {\n"
  "  static void _printString(String s) native \"Logger_PrintString\";\n"
  "}\n"

;
Review URL: https://chromiumcodereview.appspot.com//9348112

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4280 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-15 19:14:03 +00:00
sgjesse@google.com b4d571dcdd Handle stdio redirection in standalone VM
The recent change to epoll on Linux and kqueue on Mac OS for getting
notifications from file descriptors caused the redirection of stdin,
stdout and stderr for the stand alone VM to stop working.

On Linux epoll failed when file descriptor 0, 1 or 2 redirected from
or to a file war registered. On Mac OS there was just no events
generated from kqueue.

The streams created for stdio, stdout and stderr is now of the correct
type and for file redirections no longer a socket object holding a
file descriptor for a regular file.

Added testing of stdio redirection using both pipes and files. These
tests are currently skipped on Windows.

Fixed handlin of short socket read when reading the process exit code.

Always close the socket port when not waiting for any events.

R=iposva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4226 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-14 15:20:27 +00:00
asiva@google.com d50bbba277 Implement support for specifying string interopolation style variable substitution in the import and source statements.
e.g:
sivamach[runtime]>more /workspace/asiva/expr/test1.dart
#library('test1.dart');
#import('${GOOGLE}$SRC/test2.dart');
#import('$DART/test3.dart');
test1() {
  print("test1");
}
main() {
  test1();
  test2();
  test3();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test2.dart
#library('test2.dart');
#source('$GOOGLE$SRC/test2a.dart');
test2() {
  print("test2");
  test2a();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test2a.dart
test2a() {
  print("test2a");
}
sivamach[runtime]>more /workspace/asiva/expr/src/test3.dart
#library('test3.dart');
#source('test3a.dart');
test3() {
  print("test3");
  test3a();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test3a.dart
test3a() {
  print("test3a");
}

sivamach[runtime]>out/Debug_ia32/dart --import_map=GOOGLE,/workspace/asiva/expr --import_map=SRC,src --import_map=DART,/workspace/asiva/expr/src /workspace/asiva/expr/test1.dart
test1
test2
test2a
test3
test3a
Review URL: https://chromiumcodereview.appspot.com//9359009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4199 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 22:50:19 +00:00
sgjesse@google.com bba0b40536 Fix x64 compilation
R=srdjan@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4189 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 14:51:52 +00:00
sgjesse@google.com 0365cf42d0 Refactored thread pool
The thread pool has been refactored to hold all implementation state
in the ThreadPool class and have all internal state protected by a
single monitor.

Added support for starting and stopping the same pool several
times. When stopping the queue can be drained or not.

Added two tests which handles messages.

This change is based on https://chromiumcodereview.appspot.com/9141005/.

R=iposva@google.com, ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4181 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 12:05:08 +00:00
sgjesse@google.com 18743ce4fb Fix kqueue handling of no timeout
Using a tiemout value of 0 when there was no timeout caused busy
looping int the eventhandler thread as that actually ment
immediate timeout. No timeout is specified using NULL.

BUG=dart:1641

R=iposva@google.com

TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4176 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 09:16:57 +00:00
ager@google.com 4b8a31e201 Set SO_LINGER on sockets on windows.
Uncovered by fixed Socket tests.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4132 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-10 12:41:13 +00:00
ager@google.com ac5c191683 Another attempt at fixing the Socket tests.
The tests did not wait for the server isolate to finish before
exiting the main isolate.

The tests did not correctly count the number of bytes received on
the server-side. We have to count bytes per connection.

There were issues with close handlers being confused for timeouts.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4127 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-10 11:00:15 +00:00
ager@google.com aaed22d42e Revert "Fix potential flakiness of SocketStreamCloseTest."
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4120 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-10 07:06:18 +00:00
ager@google.com 4b2bfef991 Fix potential flakiness of SocketStreamCloseTest.
Not reading out all 5 bytes before moving on.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4119 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-10 06:57:37 +00:00
ager@google.com 3e590345ca Fix event handler assert stupidity. :-)
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4035 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-08 14:28:24 +00:00
ager@google.com 0a0f1d9504 Move the event handler on macos from poll to kqueue. Simpler and faster.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4028 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-08 12:18:29 +00:00
ager@google.com 4bb47cafcd Fix problem with socket input stream on MacOS when reading from tty.
This could cause an empty buffer to be added to an internal BufferList
which violates our assumptions.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4027 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-08 10:51:58 +00:00
ricow@google.com 7c524e3e3c Change file opening operation to set position at the end of the file when FileMode.APPEND is used.
Additionally, allow File.openOutputStream to take a FileMode enum (only FileMode.WRITE and FileMode.APPEND is allowed).
Review URL: https://chromiumcodereview.appspot.com//9346015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3984 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-07 09:34:12 +00:00
ager@google.com e4f7a8d620 Use epoll for the event handler on Linux.
epoll is faster than poll and we avoid iterating all potential
file descriptors all the time.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3980 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-07 08:19:33 +00:00
sgjesse@google.com 29ff35540e Fix Windows build
TBR=asiva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3955 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-06 17:03:18 +00:00
sgjesse@google.com 186e0078e4 Fix Windows build
TBR=asiva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3949 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-06 15:56:44 +00:00
sgjesse@google.com be4fb55ac9 Fix Windows and Mac OS builds
TBR=asiva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3948 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-06 15:52:39 +00:00
sgjesse@google.com 4e9686dc4b Implemented encoding af a Dart_CMessage structure into a Dart message. Currently supported types are:
Boolean
  Smi
  Double
  String
  Array

The encoding uses the upper bits of the Dart_CObject type field for "marking" already written objects with their object id for generating backward references. After serialization these mark are removed.

Added the API Dart_PostCMessage for encoding and posting a Dart_CMessage structure.

Removed the API Dart_PostIntArray and used Dart_PostCMessage instead.

R=asive@google.com,turnidge@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3947 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-06 15:42:15 +00:00
ager@google.com 641cf84f6a Implement recursive directory deletion.
Additionally, make sure that the handler can be registered after
the operation in file and directory implementation:

  dir.delete();
  dir.deleteHandler = () => print('hest');

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3892 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-03 12:37:30 +00:00
ager@google.com 37499dce81 Rework Windows process handling.
- Use only one thread to wait for multiple process objects.
- Fix issue where reading from a closed pipe would print an
  error message on stderr.
- Remove the need to go to dart before removing a processinfo
  object from the list. Sometimes you never get there so we
  have to remove the process info object always.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3844 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-02 13:47:42 +00:00
sgjesse@google.com 42b70dcddb Change the thread interface in runtime/platform and use it starting all threads
The platform thread interface (dart::thread) is now refactored to an
all static interface as suggested by iposva@ and asiva@. Use this
interface for running all threads in the VM.

R=ager@google.com, iposva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3830 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-02 08:59:26 +00:00
ajohnsen@google.com 143de9eb80 Use ByteArray's native for Socket and File.
Review URL: https://chromiumcodereview.appspot.com//9235067

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3812 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 21:48:27 +00:00
ager@google.com ed3338dbae Wait for exit-code thread to terminate before terminating main.
The code is identical on Linux and Mac. Currently unimplemented on
Windows because I had to revert my change to the exit code handling
on Windows. I will revive that change tomorrow and implement this
as part of that change.

R=iposva@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3801 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 18:16:45 +00:00
ager@google.com 7031be2291 Revert "Changes to the process implementation."
There is a race-condition on Windows and exit handling when a process
has been closed is incorrect.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3790 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 14:19:25 +00:00
ager@google.com 6b5815328c Changes to the process implementation.
- Make the list of active processes thread safe on Windows.
- Use only one thread on Windows to detect process termination.
- Stop the process termination thread when the standalone VM terminates.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3780 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 09:09:23 +00:00
ager@google.com 37af08b705 Move actual work out of the SIGCHLD signal handler for the dart:io
process library.

Use the self-pipe trick to signal a dedicated thread when a SIGCHLD
signal is received. The dedicated thread will perform the actual work
of extracting the exit code and posting it back to Dart.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3711 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-31 09:10:24 +00:00
ager@google.com c3f89c46ec Fix race condition between signal handler and main thread.
The signal handler could unblock the main thread. The main thread
could delete the Process object the signal handler is holding a
pointer to. The signal handler could then close a file descriptor
it got from the deleted memory.

The whole process exit handling infrastructure is pretty fragile.
We should attempt to come up with something simpler.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3652 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 13:01:16 +00:00
ajohnsen@google.com 20f24769c8 Fix type error
Review URL: https://chromiumcodereview.appspot.com//9249052

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3629 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 22:56:50 +00:00
ajohnsen@google.com 56d0e3a746 Send data in chunks when writing to socket.
Review URL: https://chromiumcodereview.appspot.com//9220008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3628 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 22:50:26 +00:00
ager@google.com 4605b5ea33 Minor changes to the dart:io library files.
- Split some of the streams into an interface and an implementation file.
- Add documentation comments where missing.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3616 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 10:03:19 +00:00
ager@google.com c46939aa66 Comment and white-space cleanup in IO libraries.
- use dart doc comment for interface comments.
- use '//' style comments for non-doc comments.
- remove some whitespace.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3554 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 15:39:58 +00:00
ager@google.com e6994683ad Another round of minor fixes in the IO libraries.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3546 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 13:33:23 +00:00
ager@google.com b1c88f1d23 Fix a couple of minor issues in IO libraries.
- Wrong type in createTempHandler callback.
- Missing implementation of errorHandler setter on StringInputStreams.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3541 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 12:30:12 +00:00
ager@google.com 0f9fdc51d3 Add extra debug information when failing to deliver an interrupt message.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3539 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 09:52:53 +00:00
ager@google.com 4efd1f98fa Split dart:builtin into dart:builtin and dart:io.
- dart:builtin is implicitly imported.
- dart:io has to be explicitly imported.

I will update the macos and windows stable test binaries when we
are happy with the solution.

R=iposva@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3537 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 07:36:59 +00:00
ager@google.com 0e53275c79 Save and restore errno in signal handler.
Having a signal handler that clobbers errno can lead to spurious
behavior in other code that relies on errno. One example of this
is pthread_cond_wait.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3499 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 15:07:09 +00:00
whesse@google.com b02ed08af1 Add script attribute to Options class, providing the name of the running script.
BUG=dart:409
TEST=standalone/OptionsTest

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3485 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 12:15:26 +00:00
sgjesse@google.com 76a9abf164 Fix Mac OS build
TBR=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3484 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 09:53:28 +00:00
sgjesse@google.com c1d041500f Use hash map for event handler file descriptor map
Instead of using an array indexed using the file descriptor for
looking up data associated with a socket (SocketData objects) this is
now stored in a hash map using the file descriptor as key.

Added hash map implementation like the one used in the V8 project.

R=ager@google.com, whesse@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3483 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 09:10:51 +00:00
sgjesse@google.com 3a02bcfc04 Add additional include guard in platform specific .h files
R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3433 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 13:37:26 +00:00