OLD | NEW |
---|---|
(Empty) | |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 /** | |
6 * An [Expando] allows adding new properties to objects. | |
7 */ | |
8 interface Expando<T> default _Expando<T> { | |
9 | |
10 /** | |
11 * The name of the this [Expando] as passed to the constructor. If | |
12 * no name was passed to the constructor, the name is [null]. | |
13 */ | |
14 final String name; | |
15 | |
16 /** | |
17 * Creates a new [Expando]. The optional name is only used for | |
18 * debugging purposes and creating two different (non-const) | |
19 * [Expando]s with the same name does not | |
Ivan Posva
2012/06/11 13:54:37
short comment
kasperl
2012/06/12 05:16:05
Done.
| |
20 */ | |
21 const Expando([String name]); | |
22 | |
23 /** | |
24 * Gets the value of this [Expando]'s property on the given | |
25 * object. If the object hasn't been expanded, the method returns | |
26 * [null]. | |
27 */ | |
28 T operator [](Object object); | |
29 | |
30 /** | |
31 * Sets the value of this [Expando]'s property on the given | |
32 * object. Properties can effectively be removed again by setting | |
33 * their value to null. | |
34 */ | |
35 void operator []=(Object object, T value); | |
36 | |
37 } | |
OLD | NEW |