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

Side by Side Diff: pkg/observe/lib/src/metadata.dart

Issue 26967004: add @MirrorsUsed to observe/polymer/polymer_exprs pkgs (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: fix typo in comment Created 7 years, 2 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
(Empty)
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
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.
4
5 part of observe;
6
7 /**
8 * Use `@observable` to make a field automatically observable, or to indicate
9 * that a property is observable.
10 */
11 const ObservableProperty observable = const ObservableProperty();
12
13 /**
14 * An annotation that is used to make a property observable.
15 * Normally this is used via the [observable] constant, for example:
16 *
17 * class Monster {
18 * @observable int health;
19 * }
20 *
21 * If needed, you can subclass this to create another annotation that will also
22 * be treated as observable.
23 */
24 // Note: observable properties imply reflectable.
25 class ObservableProperty {
26 const ObservableProperty();
27 }
28
29
30 /**
31 * Use `@reflectable` to make a type or member available to reflection in the
32 * observe package. This is necessary to make the member visible to
33 * [PathObserver], or similar systems, once the code is deployed.
34 */
35 const Reflectable reflectable = const Reflectable();
36
37 /**
38 * An annotation that is used to make a type or member reflectable. This makes
39 * it available to [PathObserver] at runtime. For example:
40 *
41 * @reflectable
42 * class Monster extends ChangeNotifierBase {
43 * int _health;
44 * int get health => _health;
45 * ...
46 * }
47 * ...
48 * // This will work even if the code has been tree-shaken/minified:
49 * final monster = new Monster();
50 * new PathObserver(monster, 'health').changes.listen(...);
51 */
52 class Reflectable {
53 const Reflectable();
54 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698