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

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

Issue 2231993002: Add @visibleForTesting annotation to meta. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: tweak Created 4 years, 4 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
« no previous file with comments | « no previous file | 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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 /// Constants for use in metadata annotations. 5 /// Constants for use in metadata annotations.
6 /// 6 ///
7 /// See also `@deprecated` and `@override` in the `dart:core` library. 7 /// See also `@deprecated` and `@override` in the `dart:core` library.
8 /// 8 ///
9 /// Annotations provide semantic information that tools can use to provide a 9 /// Annotations provide semantic information that tools can use to provide a
10 /// better user experience. For example, an IDE might not autocomplete the name 10 /// better user experience. For example, an IDE might not autocomplete the name
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 /// Tools, such as the analyzer, can provide feedback if 90 /// Tools, such as the analyzer, can provide feedback if
91 /// 91 ///
92 /// * the annotation is associated with anything other than a named parameter, 92 /// * the annotation is associated with anything other than a named parameter,
93 /// * the annotation is associated with a named parameter in a method `m1` that 93 /// * the annotation is associated with a named parameter in a method `m1` that
94 /// overrides a method `m0` and `m0` defines a named parameter with the same 94 /// overrides a method `m0` and `m0` defines a named parameter with the same
95 /// name that does not have this annotation, or 95 /// name that does not have this annotation, or
96 /// * an invocation of a method or function does not include an argument 96 /// * an invocation of a method or function does not include an argument
97 /// corresponding to a named parameter that has this annotation. 97 /// corresponding to a named parameter that has this annotation.
98 const Required required = const Required(); 98 const Required required = const Required();
99 99
100 /// Used to annotate a declaration was made public, so that it is more visible
101 /// than otherwise necessary, to make code testable.
102 ///
103 /// Tools, such as the analyzer, can provide feedback if
104 ///
105 /// * the annotation is associated with a declaration not in the `lib` folder
106 /// of a package;
107 /// or
108 /// * the declaration is referenced outside of its the defining library or a
109 /// library which is in the `test` folder of the defining package.
110 const _VisibleForTesting visibleForTesting = const _VisibleForTesting();
111
100 /// Used to annotate a named parameter `p` in a method or function `f`. 112 /// Used to annotate a named parameter `p` in a method or function `f`.
101 /// 113 ///
102 /// See [required] for more details. 114 /// See [required] for more details.
103 class Required { 115 class Required {
104 /// A human-readable explanation of the reason why the annotated parameter is 116 /// A human-readable explanation of the reason why the annotated parameter is
105 /// required. For example, the annotation might look like: 117 /// required. For example, the annotation might look like:
106 /// 118 ///
107 /// ButtonWidget({ 119 /// ButtonWidget({
108 /// Function onHover, 120 /// Function onHover,
109 /// @Required('Buttons must do something when pressed') 121 /// @Required('Buttons must do something when pressed')
(...skipping 18 matching lines...) Expand all
128 const _MustCallSuper(); 140 const _MustCallSuper();
129 } 141 }
130 142
131 class _OptionalTypeArgs { 143 class _OptionalTypeArgs {
132 const _OptionalTypeArgs(); 144 const _OptionalTypeArgs();
133 } 145 }
134 146
135 class _Protected { 147 class _Protected {
136 const _Protected(); 148 const _Protected();
137 } 149 }
150
151 class _VisibleForTesting {
152 const _VisibleForTesting();
153 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698