| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 | 2 |
| 3 // for details. All rights reserved. Use of this source code is governed by a | 3 // for details. All rights reserved. Use of this source code is governed by a |
| 4 // BSD-style license that can be found in the LICENSE file. | 4 // BSD-style license that can be found in the LICENSE file. |
| 5 | 5 |
| 6 import 'dart:collection' show HashMap, HashSet; | 6 import 'dart:collection' show HashMap, HashSet; |
| 7 import 'dart:math' show min, max; | 7 import 'dart:math' show min, max; |
| 8 | 8 |
| 9 import 'package:analyzer/analyzer.dart' hide ConstantEvaluator; | 9 import 'package:analyzer/analyzer.dart' hide ConstantEvaluator; |
| 10 import 'package:analyzer/dart/ast/ast.dart'; | 10 import 'package:analyzer/dart/ast/ast.dart'; |
| (...skipping 1968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1979 _runtimeModule, | 1979 _runtimeModule, |
| 1980 new JS.ArrayInitializer( | 1980 new JS.ArrayInitializer( |
| 1981 new List<JS.Expression>.from(metadata.map(_instantiateAnnotation))) | 1981 new List<JS.Expression>.from(metadata.map(_instantiateAnnotation))) |
| 1982 ])); | 1982 ])); |
| 1983 } | 1983 } |
| 1984 } | 1984 } |
| 1985 | 1985 |
| 1986 /// Ensure `dartx.` symbols we will use are present. | 1986 /// Ensure `dartx.` symbols we will use are present. |
| 1987 void _initExtensionSymbols(ClassElement classElem, | 1987 void _initExtensionSymbols(ClassElement classElem, |
| 1988 List<MethodDeclaration> methods, List<FieldDeclaration> fields) { | 1988 List<MethodDeclaration> methods, List<FieldDeclaration> fields) { |
| 1989 if (_extensionTypes.hasNativeSubtype(classElem.type)) { | 1989 if (_extensionTypes.hasNativeSubtype(classElem.type) || |
| 1990 classElem.type.isObject) { |
| 1990 for (var m in methods) { | 1991 for (var m in methods) { |
| 1991 if (!m.isAbstract && | 1992 if (!m.isAbstract && !m.isStatic && m.element.isPublic) { |
| 1992 !m.isStatic && | |
| 1993 resolutionMap.elementDeclaredByMethodDeclaration(m).isPublic) { | |
| 1994 _declareMemberName(m.element, useExtension: true); | 1993 _declareMemberName(m.element, useExtension: true); |
| 1995 } | 1994 } |
| 1996 } | 1995 } |
| 1997 for (var fieldDecl in fields) { | 1996 for (var fieldDecl in fields) { |
| 1998 if (!fieldDecl.isStatic) { | 1997 if (!fieldDecl.isStatic) { |
| 1999 for (var field in fieldDecl.fields.variables) { | 1998 for (var field in fieldDecl.fields.variables) { |
| 2000 var e = field.element as FieldElement; | 1999 var e = field.element as FieldElement; |
| 2001 if (e.isPublic) { | 2000 if (e.isPublic) { |
| 2002 _declareMemberName(e.getter, useExtension: true); | 2001 _declareMemberName(e.getter, useExtension: true); |
| 2003 } | 2002 } |
| (...skipping 4119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6123 '~/': 'floorDivide', | 6122 '~/': 'floorDivide', |
| 6124 '*': 'times', | 6123 '*': 'times', |
| 6125 '%': 'modulo', | 6124 '%': 'modulo', |
| 6126 '|': 'bitOr', | 6125 '|': 'bitOr', |
| 6127 '^': 'bitXor', | 6126 '^': 'bitXor', |
| 6128 '&': 'bitAnd', | 6127 '&': 'bitAnd', |
| 6129 '<<': 'leftShift', | 6128 '<<': 'leftShift', |
| 6130 '>>': 'rightShift', | 6129 '>>': 'rightShift', |
| 6131 '~': 'bitNot' | 6130 '~': 'bitNot' |
| 6132 }; | 6131 }; |
| OLD | NEW |