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

Side by Side Diff: pkg/serialization/lib/serialization.dart

Issue 14188048: add installation instructions to pkg packages (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: tweaks from review Created 7 years, 8 months 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
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 * This provides a general-purpose serialization facility for Dart objects. A 6 * This provides a general-purpose serialization facility for Dart objects. A
7 * [Serialization] is defined in terms of [SerializationRule]s and supports 7 * [Serialization] is defined in terms of [SerializationRule]s and supports
8 * reading and writing to different formats. 8 * reading and writing to different formats.
9 * 9 *
10 * ## Installing ##
11 *
12 * Use [pub][] to install this package. Add the following to your `pubspec.yaml`
13 * file.
14 *
15 * dependencies:
16 * serialization: any
17 *
18 * Then run `pub install`.
19 *
20 * For more information, see the
21 * [serialization package on pub.dartlang.org][pkg].
22 *
10 * Setup 23 * Setup
11 * ===== 24 * =====
12 * A simple example of usage is 25 * A simple example of usage is
13 * 26 *
14 * var address = new Address(); 27 * var address = new Address();
15 * address.street = 'N 34th'; 28 * address.street = 'N 34th';
16 * address.city = 'Seattle'; 29 * address.city = 'Seattle';
17 * var serialization = new Serialization() 30 * var serialization = new Serialization()
18 * ..addRuleFor(address); 31 * ..addRuleFor(address);
19 * Map output = serialization.write(address); 32 * Map output = serialization.write(address);
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 * take a [ClassMirror] in their constructor, and we cannot serialize those. So 187 * take a [ClassMirror] in their constructor, and we cannot serialize those. So
175 * when we read the rules, we must provide a Map<String, Object> which maps from 188 * when we read the rules, we must provide a Map<String, Object> which maps from
176 * the simple name of classes we are interested in to a [ClassMirror]. This can 189 * the simple name of classes we are interested in to a [ClassMirror]. This can
177 * be provided either in the [namedObjects] variable of the Serialization, 190 * be provided either in the [namedObjects] variable of the Serialization,
178 * or as an additional parameter to the reading and writing methods on the 191 * or as an additional parameter to the reading and writing methods on the
179 * [Reader] or [Writer] respectively. 192 * [Reader] or [Writer] respectively.
180 * 193 *
181 * new Serialization() 194 * new Serialization()
182 * ..addRuleFor(new Person(), constructorFields: ["name"]) 195 * ..addRuleFor(new Person(), constructorFields: ["name"])
183 * ..namedObjects['Person'] = reflect(new Person()).type; 196 * ..namedObjects['Person'] = reflect(new Person()).type;
197 *
198 * [pub]: http://pub.dartlang.org
199 * [pkg]: http://pub.dartlang.org/packages/serialization
184 */ 200 */
185 library serialization; 201 library serialization;
186 202
187 import 'src/mirrors_helpers.dart'; 203 import 'src/mirrors_helpers.dart';
188 import 'src/serialization_helpers.dart'; 204 import 'src/serialization_helpers.dart';
189 import 'dart:async'; 205 import 'dart:async';
190 import 'dart:json' as json; 206 import 'dart:json' as json;
191 import 'dart:collection'; 207 import 'dart:collection';
192 208
193 part 'src/reader_writer.dart'; 209 part 'src/reader_writer.dart';
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 } 485 }
470 486
471 /** 487 /**
472 * An exception class for errors during serialization. 488 * An exception class for errors during serialization.
473 */ 489 */
474 class SerializationException implements Exception { 490 class SerializationException implements Exception {
475 final String message; 491 final String message;
476 const SerializationException([this.message]); 492 const SerializationException([this.message]);
477 toString() => "SerializationException($message)"; 493 toString() => "SerializationException($message)";
478 } 494 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698