| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 * Defines element visitors that support useful patterns for visiting the | 6 * Defines element visitors that support useful patterns for visiting the |
| 7 * elements in an [element model](element.dart). | 7 * elements in an [element model](element.dart). |
| 8 * | 8 * |
| 9 * Dart is an evolving language, and the element model must evolved with it. | 9 * Dart is an evolving language, and the element model must evolved with it. |
| 10 * When the element model changes, the visitor interface will sometimes change | 10 * When the element model changes, the visitor interface will sometimes change |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 visitElement(element); | 122 visitElement(element); |
| 123 | 123 |
| 124 @override | 124 @override |
| 125 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => | 125 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => |
| 126 visitElement(element); | 126 visitElement(element); |
| 127 | 127 |
| 128 @override | 128 @override |
| 129 R visitImportElement(ImportElement element) => visitElement(element); | 129 R visitImportElement(ImportElement element) => visitElement(element); |
| 130 | 130 |
| 131 @override | 131 @override |
| 132 R visitLabelElement(LabelElement element) => visitElement(element); |
| 133 |
| 134 @override |
| 132 R visitLibraryElement(LibraryElement element) => visitElement(element); | 135 R visitLibraryElement(LibraryElement element) => visitElement(element); |
| 133 | 136 |
| 134 R visitLocalElement(LocalElement element) { | 137 R visitLocalElement(LocalElement element) { |
| 135 if (element is LocalVariableElement) { | 138 if (element is LocalVariableElement) { |
| 136 return visitVariableElement(element); | 139 return visitVariableElement(element); |
| 137 } else if (element is ParameterElement) { | 140 } else if (element is ParameterElement) { |
| 138 return visitVariableElement(element); | 141 return visitVariableElement(element); |
| 139 } else if (element is FunctionElement) { | 142 } else if (element is FunctionElement) { |
| 140 return visitExecutableElement(element); | 143 return visitExecutableElement(element); |
| 141 } | 144 } |
| 142 return null; | 145 return null; |
| 143 } | 146 } |
| 144 | 147 |
| 145 @override | 148 @override |
| 149 R visitLocalVariableElement(LocalVariableElement element) => |
| 150 visitLocalElement(element); |
| 151 |
| 152 @override |
| 146 R visitMethodElement(MethodElement element) => | 153 R visitMethodElement(MethodElement element) => |
| 147 visitExecutableElement(element); | 154 visitExecutableElement(element); |
| 148 | 155 |
| 149 @override | 156 @override |
| 150 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => | 157 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => |
| 151 visitElement(element); | 158 visitElement(element); |
| 152 | 159 |
| 153 @override | 160 @override |
| 154 R visitParameterElement(ParameterElement element) => | 161 R visitParameterElement(ParameterElement element) => |
| 155 visitLocalElement(element); | 162 visitLocalElement(element); |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 243 return null; | 250 return null; |
| 244 } | 251 } |
| 245 | 252 |
| 246 @override | 253 @override |
| 247 R visitImportElement(ImportElement element) { | 254 R visitImportElement(ImportElement element) { |
| 248 element.visitChildren(this); | 255 element.visitChildren(this); |
| 249 return null; | 256 return null; |
| 250 } | 257 } |
| 251 | 258 |
| 252 @override | 259 @override |
| 260 R visitLabelElement(LabelElement element) { |
| 261 element.visitChildren(this); |
| 262 return null; |
| 263 } |
| 264 |
| 265 @override |
| 253 R visitLibraryElement(LibraryElement element) { | 266 R visitLibraryElement(LibraryElement element) { |
| 254 element.visitChildren(this); | 267 element.visitChildren(this); |
| 255 return null; | 268 return null; |
| 256 } | 269 } |
| 257 | 270 |
| 258 @override | 271 @override |
| 272 R visitLocalVariableElement(LocalVariableElement element) { |
| 273 element.visitChildren(this); |
| 274 return null; |
| 275 } |
| 276 |
| 277 @override |
| 259 R visitMethodElement(MethodElement element) { | 278 R visitMethodElement(MethodElement element) { |
| 260 element.visitChildren(this); | 279 element.visitChildren(this); |
| 261 return null; | 280 return null; |
| 262 } | 281 } |
| 263 | 282 |
| 264 @override | 283 @override |
| 265 R visitMultiplyDefinedElement(MultiplyDefinedElement element) { | 284 R visitMultiplyDefinedElement(MultiplyDefinedElement element) { |
| 266 element.visitChildren(this); | 285 element.visitChildren(this); |
| 267 return null; | 286 return null; |
| 268 } | 287 } |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 @override | 351 @override |
| 333 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element) => null; | 352 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element) => null; |
| 334 | 353 |
| 335 @override | 354 @override |
| 336 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => null; | 355 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => null; |
| 337 | 356 |
| 338 @override | 357 @override |
| 339 R visitImportElement(ImportElement element) => null; | 358 R visitImportElement(ImportElement element) => null; |
| 340 | 359 |
| 341 @override | 360 @override |
| 361 R visitLabelElement(LabelElement element) => null; |
| 362 |
| 363 @override |
| 342 R visitLibraryElement(LibraryElement element) => null; | 364 R visitLibraryElement(LibraryElement element) => null; |
| 343 | 365 |
| 344 @override | 366 @override |
| 367 R visitLocalVariableElement(LocalVariableElement element) => null; |
| 368 |
| 369 @override |
| 345 R visitMethodElement(MethodElement element) => null; | 370 R visitMethodElement(MethodElement element) => null; |
| 346 | 371 |
| 347 @override | 372 @override |
| 348 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => null; | 373 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => null; |
| 349 | 374 |
| 350 @override | 375 @override |
| 351 R visitParameterElement(ParameterElement element) => null; | 376 R visitParameterElement(ParameterElement element) => null; |
| 352 | 377 |
| 353 @override | 378 @override |
| 354 R visitPrefixElement(PrefixElement element) => null; | 379 R visitPrefixElement(PrefixElement element) => null; |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 401 _throw(element); | 426 _throw(element); |
| 402 | 427 |
| 403 @override | 428 @override |
| 404 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => | 429 R visitGenericFunctionTypeElement(GenericFunctionTypeElement element) => |
| 405 _throw(element); | 430 _throw(element); |
| 406 | 431 |
| 407 @override | 432 @override |
| 408 R visitImportElement(ImportElement element) => _throw(element); | 433 R visitImportElement(ImportElement element) => _throw(element); |
| 409 | 434 |
| 410 @override | 435 @override |
| 436 R visitLabelElement(LabelElement element) => _throw(element); |
| 437 |
| 438 @override |
| 411 R visitLibraryElement(LibraryElement element) => _throw(element); | 439 R visitLibraryElement(LibraryElement element) => _throw(element); |
| 412 | 440 |
| 413 @override | 441 @override |
| 442 R visitLocalVariableElement(LocalVariableElement element) => _throw(element); |
| 443 |
| 444 @override |
| 414 R visitMethodElement(MethodElement element) => _throw(element); | 445 R visitMethodElement(MethodElement element) => _throw(element); |
| 415 | 446 |
| 416 @override | 447 @override |
| 417 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => | 448 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => |
| 418 _throw(element); | 449 _throw(element); |
| 419 | 450 |
| 420 @override | 451 @override |
| 421 R visitParameterElement(ParameterElement element) => _throw(element); | 452 R visitParameterElement(ParameterElement element) => _throw(element); |
| 422 | 453 |
| 423 @override | 454 @override |
| 424 R visitPrefixElement(PrefixElement element) => _throw(element); | 455 R visitPrefixElement(PrefixElement element) => _throw(element); |
| 425 | 456 |
| 426 @override | 457 @override |
| 427 R visitPropertyAccessorElement(PropertyAccessorElement element) => | 458 R visitPropertyAccessorElement(PropertyAccessorElement element) => |
| 428 _throw(element); | 459 _throw(element); |
| 429 | 460 |
| 430 @override | 461 @override |
| 431 R visitTopLevelVariableElement(TopLevelVariableElement element) => | 462 R visitTopLevelVariableElement(TopLevelVariableElement element) => |
| 432 _throw(element); | 463 _throw(element); |
| 433 | 464 |
| 434 @override | 465 @override |
| 435 R visitTypeParameterElement(TypeParameterElement element) => _throw(element); | 466 R visitTypeParameterElement(TypeParameterElement element) => _throw(element); |
| 436 | 467 |
| 437 R _throw(Element element) { | 468 R _throw(Element element) { |
| 438 throw new Exception( | 469 throw new Exception( |
| 439 'Missing implementation of visit${element.runtimeType}'); | 470 'Missing implementation of visit${element.runtimeType}'); |
| 440 } | 471 } |
| 441 } | 472 } |
| OLD | NEW |