| Index: sdk/lib/io/directory.dart
|
| diff --git a/sdk/lib/io/directory.dart b/sdk/lib/io/directory.dart
|
| index 8c0ad5abd05cf07d234a26a0e0a001a8241cd45d..59dc529522944d1876c62d2dacb21363fc5b63df 100644
|
| --- a/sdk/lib/io/directory.dart
|
| +++ b/sdk/lib/io/directory.dart
|
| @@ -26,7 +26,29 @@ abstract class Directory extends FileSystemEntity {
|
| * Creates a directory object pointing to the current working
|
| * directory.
|
| */
|
| - factory Directory.current() => new _Directory.current();
|
| + static Directory get current => _Directory.current;
|
| +
|
| + /**
|
| + * Sets the current working directory of the Dart process including
|
| + * all running isolates. The new value set can be either a [Directory]
|
| + * or a [String].
|
| + *
|
| + * The new value is passed to the OS's system call unchanged, so a
|
| + * relative path passed as the new working directory will be
|
| + * resolved by the OS.
|
| + *
|
| + * Note that setting the current working directory is a synchronous
|
| + * operation and that it changes the the working directory of *all*
|
| + * isolates.
|
| + *
|
| + * Use this with care - especially when working with asynchronous
|
| + * operations and multiple isolates. Changing the working directory,
|
| + * while asynchronous operations are pending or when other isolates
|
| + * are working with the file system, can lead to unexpected results.
|
| + */
|
| + static void set current(path) {
|
| + _Directory.current = path;
|
| + }
|
|
|
| /**
|
| * Check whether a directory with this name already exists. Returns
|
|
|