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

Side by Side Diff: corelib/src/implementation/promise_implementation.dart

Issue 8400038: Use strict equality when comparing with null, especially when null is a default value. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: '' Created 9 years, 1 month 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) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 // Dart core library. 5 // Dart core library.
6 6
7 class PromiseImpl<T> implements Promise<T> { 7 class PromiseImpl<T> implements Promise<T> {
8 8
9 // Enumeration of possible states: 9 // Enumeration of possible states:
10 static final int CREATED = 0; 10 static final int CREATED = 0;
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 _clearListeners(); 154 _clearListeners();
155 return true; 155 return true;
156 } 156 }
157 return false; 157 return false;
158 } 158 }
159 159
160 void addCompleteHandler(void completeHandler(T result)) { 160 void addCompleteHandler(void completeHandler(T result)) {
161 if (_state == COMPLETE_NORMAL) { 161 if (_state == COMPLETE_NORMAL) {
162 completeHandler(_value); 162 completeHandler(_value);
163 } else if (!isDone()) { 163 } else if (!isDone()) {
164 if (_normalListeners == null) { 164 if (_normalListeners === null) {
165 _normalListeners = new Queue<Function>(); 165 _normalListeners = new Queue<Function>();
166 } 166 }
167 _normalListeners.addLast(completeHandler); 167 _normalListeners.addLast(completeHandler);
168 } 168 }
169 } 169 }
170 170
171 void addErrorHandler(void errorHandler(err)) { 171 void addErrorHandler(void errorHandler(err)) {
172 if (_state == COMPLETE_ERROR) { 172 if (_state == COMPLETE_ERROR) {
173 errorHandler(_error); 173 errorHandler(_error);
174 } else if (!isDone()) { 174 } else if (!isDone()) {
175 if (_errorListeners == null) { 175 if (_errorListeners === null) {
176 _errorListeners = new Queue<Function>(); 176 _errorListeners = new Queue<Function>();
177 } 177 }
178 _errorListeners.addLast(errorHandler); 178 _errorListeners.addLast(errorHandler);
179 } 179 }
180 } 180 }
181 181
182 void addCancelHandler(void cancelHandler()) { 182 void addCancelHandler(void cancelHandler()) {
183 if (isCancelled()) { 183 if (isCancelled()) {
184 cancelHandler(); 184 cancelHandler();
185 } else if (!isDone()) { 185 } else if (!isDone()) {
186 if (_cancelListeners == null) { 186 if (_cancelListeners === null) {
187 _cancelListeners = new Queue<Function>(); 187 _cancelListeners = new Queue<Function>();
188 } 188 }
189 _cancelListeners.addLast(cancelHandler); 189 _cancelListeners.addLast(cancelHandler);
190 } 190 }
191 } 191 }
192 192
193 // TODO(sigmund): consider adding to the API a method that does the following: 193 // TODO(sigmund): consider adding to the API a method that does the following:
194 // Promise chain(callback(T r)) { 194 // Promise chain(callback(T r)) {
195 // return then(callback).flatten(); 195 // return then(callback).flatten();
196 // } 196 // }
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 } 370 }
371 } 371 }
372 return process(marshalled); 372 return process(marshalled);
373 }).flatten(); 373 }).flatten();
374 } 374 }
375 375
376 Promise<SendPort> _promise; 376 Promise<SendPort> _promise;
377 static Map<SendPort, Dispatcher> _dispatchers; 377 static Map<SendPort, Dispatcher> _dispatchers;
378 378
379 } 379 }
OLDNEW
« no previous file with comments | « corelib/src/implementation/future_implementation.dart ('k') | corelib/src/implementation/splay_tree.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698