Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: sdk/lib/io/io.dart

Issue 111463004: Adding library level docs for async, io, convert and fixing a bug in dart:core (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: changes based on kathyw's feedback Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« sdk/lib/core/date_time.dart ('K') | « sdk/lib/core/date_time.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** 5 /**
6 * File, socket, HTTP, and other I/O support for server applications. 6 * File, socket, HTTP, and other I/O support for server applications.
7 * 7 *
8 * The IO library is used for Dart server applications, 8 * The I/O library is used for Dart server applications,
9 * which run on a stand-alone Dart VM from the command line. 9 * which run on a stand-alone Dart VM from the command line.
10 * *This library does not work in browser based applications.* 10 * *This library does not work in browser-based applications.*
11 * 11 *
12 * This library allows you to work with files, directories, 12 * This library allows you to work with files, directories,
13 * sockets, processes, HTTP servers and clients, and more. 13 * sockets, processes, HTTP servers and clients, and more.
14 *
15 * To use this library in your code:
16 *
17 * import 'dart:io';
18 *
19 * Many operations related to input and output are asynchronous
20 * and are handled using [Future]s or [Stream]s, both of which
21 * are in the [dart:async] library.
Søren Gjesse 2013/12/19 09:44:40 are in -> are defined in
mem 2013/12/19 23:24:24 Done.
22 *
23 * ## FileSystemEntity
24 *
25 * Given a pathname, you can create a [FileSystemEntity] to represent
Søren Gjesse 2013/12/19 09:44:40 It is not possible to create a FileSystemEntity ob
mem 2013/12/19 23:24:24 Done.
26 * whatever is at that pathname.
27 * Then you can query the FileSystemEntity object to get information
28 * using methods such as 'isDirectory', 'isFile', and 'exists'.
29 * Because file system access can be slow, these methods
Søren Gjesse 2013/12/19 09:44:40 "can be slow" -> involved I/O.
mem 2013/12/19 23:24:24 Done.
30 * are asynchronous and return a Future.
31 *
32 * FileSystemEntity.isDirectory(myPath).then((isDir) {
33 * if (isDir) {
34 * print('$myPath is a directory');
35 * } else {
36 * print('$myPath is not a directory');
37 * }
38 * });
39 *
40 * ## File and Directory
Søren Gjesse 2013/12/19 09:44:40 Mention Link as well?
mem 2013/12/19 23:24:24 Done.
41 *
42 * Each instance of [File] or [Directory] represents a file or
43 * directory, respectively, in the native file system.
44 * Both File and Directory are subclasses of FileSystemEntity.
45 * You can manipulate the file system through objects of these types.
46 * For example, you can rename a file or directory:
47 *
48 * File myFile = new File('myFile.txt');
49 * myFile.rename('yourFile.txt').then((_) { print('file renamed'); });
50 *
51 * Many methods provided by the File and Directory classes
52 * run asynchronously and return a Future.
53 *
54 * ## HttpServer
Søren Gjesse 2013/12/19 09:44:40 HttpServer -> HttpServer and HttpClient
mem 2013/12/19 23:24:24 Done.
55 *
Søren Gjesse 2013/12/19 09:44:40 The classes [HttpServer] and [HttpClient] provides
mem 2013/12/19 23:24:24 Done.
56 * To create an Http server, we recommend that you try using
Søren Gjesse 2013/12/19 09:44:40 Start with: The [HttpServer] class provides the b
mem 2013/12/19 23:24:24 Done.
57 * the [http_server](https://pub.dartlang.org/packages/http_server)
58 * pub package, which contains
59 * a set of high-level classes that, together with the [HttpServer] class
60 * in this library, makes it easy to provide content through HTTP servers.
Søren Gjesse 2013/12/19 09:44:40 "easy to provide content through HTTP servers" ->
mem 2013/12/19 23:24:24 Done.
61 *
Søren Gjesse 2013/12/19 09:44:40 Shouldnt we have a sub-section for ## WebSocket
mem 2013/12/19 23:24:24 Thanks. It's great to have a more complete list of
mem 2013/12/19 23:24:24 Done.
62 * ## Standard output, error, and input streams
63 *
64 * This library provides the standard output, error, and input
65 * streams, named 'stdout', 'stderr', and 'stdin', respectively.
66 *
67 * The stdout and stderr streams are both [IOSink]s and have the same set
68 * of methods and properties.
69 *
70 * To write a string to 'stdout':
71 *
72 * stdout.writeln('Hello, World!');
73 *
74 * To write a list of objects to 'stderr':
75 *
76 * stderr.writeAll([ 'That ', 'is ', 'an ', 'error.', '\n']);
77 *
78 * The standard input stream is a true [Stream], so it inherits
79 * properties and methods from the Stream class.
80 *
81 * To read text synchronously from the command line
82 * (the program blocks waiting for user to type information):
83 *
84 * String inputText = stdin.readLineSync();
85 *
86 * ## Other resources
87 *
88 * For an introduction to I/O in Dart, see the
89 * [dart:io section of the library tour]
90 * (https://www.dartlang.org/docs/dart-up-and-running/contents/ch03.html#ch03-da rtio---file-and-socket-io-for-command-line-apps).
91 *
92 * To learn more about I/O in Dart, refer to the
93 * [tutorial about writing command-line apps]
94 * (https://www.dartlang.org/docs/tutorials/io/).
14 */ 95 */
15 library dart.io; 96 library dart.io;
16 97
17 import 'dart:async'; 98 import 'dart:async';
18 import 'dart:_collection-dev'; 99 import 'dart:_collection-dev';
19 import 'dart:collection' show HashMap, 100 import 'dart:collection' show HashMap,
20 HashSet, 101 HashSet,
21 LinkedList, 102 LinkedList,
22 LinkedListEntry; 103 LinkedListEntry;
23 import 'dart:convert'; 104 import 'dart:convert';
(...skipping 24 matching lines...) Expand all
48 part 'platform_impl.dart'; 129 part 'platform_impl.dart';
49 part 'process.dart'; 130 part 'process.dart';
50 part 'socket.dart'; 131 part 'socket.dart';
51 part 'stdio.dart'; 132 part 'stdio.dart';
52 part 'string_transformer.dart'; 133 part 'string_transformer.dart';
53 part 'timer_impl.dart'; 134 part 'timer_impl.dart';
54 part 'secure_socket.dart'; 135 part 'secure_socket.dart';
55 part 'secure_server_socket.dart'; 136 part 'secure_server_socket.dart';
56 part 'websocket.dart'; 137 part 'websocket.dart';
57 part 'websocket_impl.dart'; 138 part 'websocket_impl.dart';
OLDNEW
« sdk/lib/core/date_time.dart ('K') | « sdk/lib/core/date_time.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698