mirror of
https://github.com/dart-lang/sdk
synced 2024-09-20 05:51:37 +00:00
Reland: [kernel] Rename Name.name to Name.text
Change-Id: I5240b0ff09faf35184998920202d7600dc97766d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162746 Reviewed-by: Johnni Winther <johnniwinther@google.com> Commit-Queue: Johnni Winther <johnniwinther@google.com>
This commit is contained in:
parent
8d8df2c9f6
commit
c430a0ac0b
|
@ -35,11 +35,11 @@ class JsInteropChecks extends RecursiveVisitor<void> {
|
|||
if (!procedure.isExternal || !isJSInteropMember(procedure)) return;
|
||||
|
||||
if (!procedure.isStatic &&
|
||||
(procedure.name.name == '[]=' || procedure.name.name == '[]')) {
|
||||
(procedure.name.text == '[]=' || procedure.name.text == '[]')) {
|
||||
_diagnosticsReporter.report(
|
||||
messageJsInteropIndexNotSupported,
|
||||
procedure.fileOffset,
|
||||
procedure.name.name.length,
|
||||
procedure.name.text.length,
|
||||
procedure.location.file);
|
||||
}
|
||||
|
||||
|
@ -73,7 +73,7 @@ class JsInteropChecks extends RecursiveVisitor<void> {
|
|||
_diagnosticsReporter.report(
|
||||
messageJsInteropNonExternalConstructor,
|
||||
constructor.fileOffset,
|
||||
constructor.name.name.length,
|
||||
constructor.name.text.length,
|
||||
constructor.location.file);
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ class JsInteropChecks extends RecursiveVisitor<void> {
|
|||
var enclosingClass = m.enclosingClass;
|
||||
if (enclosingClass != null && !hasJSInteropAnnotation(enclosingClass)) {
|
||||
_diagnosticsReporter.report(messageJsInteropEnclosingClassJSAnnotation,
|
||||
m.fileOffset, m.name.name.length, m.location.file,
|
||||
m.fileOffset, m.name.text.length, m.location.file,
|
||||
context: <LocatedMessage>[
|
||||
messageJsInteropEnclosingClassJSAnnotationContext.withLocation(
|
||||
enclosingClass.location.file,
|
||||
|
|
|
@ -93,7 +93,7 @@ String _findExtensionMemberName(ir.Member member) {
|
|||
} else {
|
||||
extensionName = extension.name;
|
||||
}
|
||||
String memberName = descriptor.name.name;
|
||||
String memberName = descriptor.name.text;
|
||||
return '$extensionName.$memberName';
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,7 +77,7 @@ class IrAnnotationData {
|
|||
_jsInteropLibraryNames.forEach((ir.Library library, _) {
|
||||
for (ir.Member member in library.members) {
|
||||
if (member.isExternal) {
|
||||
f(member, _jsInteropMemberNames[member] ?? member.name.name);
|
||||
f(member, _jsInteropMemberNames[member] ?? member.name.text);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -86,7 +86,7 @@ class IrAnnotationData {
|
|||
if (member is ir.Field) continue;
|
||||
String name = _jsInteropMemberNames[member];
|
||||
if (member.isExternal) {
|
||||
name ??= member.name.name;
|
||||
name ??= member.name.text;
|
||||
}
|
||||
f(member, name);
|
||||
}
|
||||
|
@ -99,7 +99,7 @@ class IrAnnotationData {
|
|||
f) {
|
||||
for (ir.Member node in _nativeMembers) {
|
||||
if (node is! ir.Field) {
|
||||
String name = _nativeMemberNames[node] ?? node.name.name;
|
||||
String name = _nativeMemberNames[node] ?? node.name.text;
|
||||
f(node, name, getCreatesAnnotations(node), getReturnsAnnotations(node));
|
||||
}
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ class IrAnnotationData {
|
|||
for (ir.Class cls in _nativeClassNames.keys) {
|
||||
for (ir.Field field in cls.fields) {
|
||||
if (field.isInstanceMember) {
|
||||
String name = _nativeMemberNames[field] ?? field.name.name;
|
||||
String name = _nativeMemberNames[field] ?? field.name.text;
|
||||
f(field, name, getCreatesAnnotations(field),
|
||||
getReturnsAnnotations(field));
|
||||
}
|
||||
|
@ -348,9 +348,9 @@ PragmaAnnotationData _getPragmaAnnotation(ir.Constant constant) {
|
|||
ir.Constant optionsValue;
|
||||
value.fieldValues.forEach((ir.Reference reference, ir.Constant fieldValue) {
|
||||
ir.Field field = reference.asField;
|
||||
if (field.name.name == 'name') {
|
||||
if (field.name.text == 'name') {
|
||||
nameValue = fieldValue;
|
||||
} else if (field.name.name == 'options') {
|
||||
} else if (field.name.text == 'options') {
|
||||
optionsValue = fieldValue;
|
||||
}
|
||||
});
|
||||
|
|
|
@ -29,7 +29,7 @@ class DebugPrinter extends Visitor with Indentation, Tagging<Node> {
|
|||
@override
|
||||
void visitName(Name node) {
|
||||
openAndCloseNode(node, '${node.runtimeType}',
|
||||
{'name': node.name, 'library': node.library?.name});
|
||||
{'name': node.text, 'library': node.library?.name});
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
|
@ -542,7 +542,7 @@ abstract class ImpactBuilderBase extends StaticTypeVisitor
|
|||
positionArguments, namedArguments, typeArguments);
|
||||
// TODO(johnniwinther): Avoid treating a known function call as a
|
||||
// dynamic call when CFE provides a way to distinguish the two.
|
||||
if (operatorFromString(node.name.name) == null &&
|
||||
if (operatorFromString(node.name.text) == null &&
|
||||
receiverType is ir.DynamicType) {
|
||||
// We might implicitly call a getter that returns a function.
|
||||
registerFunctionInvocation(const ir.DynamicType(), positionArguments,
|
||||
|
|
|
@ -84,7 +84,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
|
||||
/// Returns `true` if [node] is of the form `e.runtimeType`.
|
||||
bool isGetRuntimeType(ir.TreeNode node) {
|
||||
return node is ir.PropertyGet && node.name.name == Identifiers.runtimeType_;
|
||||
return node is ir.PropertyGet && node.name.text == Identifiers.runtimeType_;
|
||||
}
|
||||
|
||||
/// Returns [node] if [node] is of the form `e.runtimeType` and `null`
|
||||
|
@ -95,7 +95,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
|
||||
/// Returns `true` if [node] is of the form `e.toString()`.
|
||||
bool isInvokeToString(ir.TreeNode node) {
|
||||
return node is ir.MethodInvocation && node.name.name == 'toString';
|
||||
return node is ir.MethodInvocation && node.name.text == 'toString';
|
||||
}
|
||||
|
||||
assert(isGetRuntimeType(node));
|
||||
|
@ -141,7 +141,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
} else if (nullAware.parent is ir.MethodInvocation) {
|
||||
ir.MethodInvocation methodInvocation = nullAware.parent;
|
||||
if (methodInvocation.receiver == nullAware.let &&
|
||||
methodInvocation.name.name == '==') {
|
||||
methodInvocation.name.text == '==') {
|
||||
// Detected
|
||||
//
|
||||
// e0?.runtimeType == other
|
||||
|
@ -202,7 +202,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
} else if (nullAware.parent is ir.Arguments &&
|
||||
nullAware.parent.parent is ir.MethodInvocation) {
|
||||
ir.MethodInvocation methodInvocation = nullAware.parent.parent;
|
||||
if (methodInvocation.name.name == '==' &&
|
||||
if (methodInvocation.name.text == '==' &&
|
||||
methodInvocation.arguments.positional.first == nullAware.let) {
|
||||
// [nullAware] is the right hand side of ==.
|
||||
|
||||
|
@ -290,7 +290,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
}
|
||||
} else if (node.parent is ir.MethodInvocation) {
|
||||
ir.MethodInvocation methodInvocation = node.parent;
|
||||
if (methodInvocation.name.name == '==' &&
|
||||
if (methodInvocation.name.text == '==' &&
|
||||
methodInvocation.receiver == node) {
|
||||
// [node] is the left hand side of ==.
|
||||
|
||||
|
@ -340,7 +340,7 @@ RuntimeTypeUseData computeRuntimeTypeUse(
|
|||
} else if (node.parent is ir.Arguments &&
|
||||
node.parent.parent is ir.MethodInvocation) {
|
||||
ir.MethodInvocation methodInvocation = node.parent.parent;
|
||||
if (methodInvocation.name.name == '==' &&
|
||||
if (methodInvocation.name.text == '==' &&
|
||||
methodInvocation.arguments.positional.first == node) {
|
||||
// [node] is the right hand side of ==.
|
||||
ir.PropertyGet otherGetRuntimeType =
|
||||
|
|
|
@ -1228,7 +1228,7 @@ class InitializerComplexity {
|
|||
sb.write('eager');
|
||||
if (fields != null) {
|
||||
sb.write('&fields=[');
|
||||
List<String> names = fields.map((f) => f.name.name).toList()..sort();
|
||||
List<String> names = fields.map((f) => f.name.text).toList()..sort();
|
||||
sb.write(names.join(','));
|
||||
sb.write(']');
|
||||
}
|
||||
|
|
|
@ -233,7 +233,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
.substituteType(interfaceTarget.getterType);
|
||||
}
|
||||
// Treat the properties of Object specially.
|
||||
String nameString = node.name.name;
|
||||
String nameString = node.name.text;
|
||||
if (nameString == 'hashCode') {
|
||||
return typeEnvironment.coreTypes.intNonNullableRawType;
|
||||
} else if (nameString == 'runtimeType') {
|
||||
|
@ -255,7 +255,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
_computePropertyGetType(node, receiverType);
|
||||
receiverType = _narrowInstanceReceiver(node.interfaceTarget, receiverType);
|
||||
handlePropertyGet(node, receiverType, resultType);
|
||||
if (node.name.name == Identifiers.runtimeType_) {
|
||||
if (node.name.text == Identifiers.runtimeType_) {
|
||||
RuntimeTypeUseData data =
|
||||
computeRuntimeTypeUse(_pendingRuntimeTypeUseData, node);
|
||||
if (data.leftRuntimeTypeExpression == node) {
|
||||
|
@ -391,7 +391,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
|
||||
ir.Member _getMember(ir.Class cls, String name) {
|
||||
for (ir.Member member in cls.members) {
|
||||
if (member.name.name == name) return member;
|
||||
if (member.name.text == name) return member;
|
||||
}
|
||||
throw fail("Member '$name' not found in $cls");
|
||||
}
|
||||
|
@ -599,7 +599,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
// TODO(34602): Remove when `interfaceTarget` is set on synthetic calls to
|
||||
// ==.
|
||||
if (interfaceTarget == null &&
|
||||
node.name.name == '==' &&
|
||||
node.name.text == '==' &&
|
||||
node.arguments.types.isEmpty &&
|
||||
node.arguments.positional.length == 1 &&
|
||||
node.arguments.named.isEmpty) {
|
||||
|
@ -647,7 +647,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
return const ir.DynamicType();
|
||||
}
|
||||
}
|
||||
if (node.name.name == 'call') {
|
||||
if (node.name.text == 'call') {
|
||||
if (receiverType is ir.FunctionType) {
|
||||
if (receiverType.typeParameters.length != node.arguments.types.length) {
|
||||
return const DoesNotCompleteType();
|
||||
|
@ -657,7 +657,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
.substituteType(receiverType.returnType);
|
||||
}
|
||||
}
|
||||
if (node.name.name == '==') {
|
||||
if (node.name.text == '==') {
|
||||
// We use this special case to simplify generation of '==' checks.
|
||||
return typeEnvironment.coreTypes.boolNonNullableRawType;
|
||||
}
|
||||
|
@ -701,7 +701,7 @@ abstract class StaticTypeVisitor extends StaticTypeBase {
|
|||
ir.DartType returnType =
|
||||
_computeMethodInvocationType(node, receiverType, argumentTypes);
|
||||
receiverType = _narrowInstanceReceiver(node.interfaceTarget, receiverType);
|
||||
if (node.name.name == '==') {
|
||||
if (node.name.text == '==') {
|
||||
ir.Expression left = node.receiver;
|
||||
ir.Expression right = node.arguments.positional[0];
|
||||
TypeMap afterInvocation = typeMap;
|
||||
|
|
|
@ -120,7 +120,7 @@ NullAwareExpression getNullAwareExpression(ir.TreeNode node) {
|
|||
body.then is ir.NullLiteral) {
|
||||
ir.MethodInvocation invocation = body.condition;
|
||||
ir.Expression receiver = invocation.receiver;
|
||||
if (invocation.name.name == '==' &&
|
||||
if (invocation.name.text == '==' &&
|
||||
receiver is ir.VariableGet &&
|
||||
receiver.variable == node.variable &&
|
||||
invocation.arguments.positional.single is ir.NullLiteral) {
|
||||
|
|
|
@ -820,7 +820,7 @@ class JsKernelToElementMap implements JsToElementMap, IrToElementMap {
|
|||
while (superclass != null) {
|
||||
JClassEnv env = classes.getEnv(superclass);
|
||||
MemberEntity superMember =
|
||||
env.lookupMember(this, name.name, setter: setter);
|
||||
env.lookupMember(this, name.text, setter: setter);
|
||||
if (superMember != null) {
|
||||
if (!superMember.isInstanceMember) return null;
|
||||
if (!superMember.isAbstract) {
|
||||
|
@ -1243,7 +1243,7 @@ class JsKernelToElementMap implements JsToElementMap, IrToElementMap {
|
|||
@override
|
||||
Name getName(ir.Name name) {
|
||||
return new Name(
|
||||
name.name, name.isPrivate ? getLibrary(name.library) : null);
|
||||
name.text, name.isPrivate ? getLibrary(name.library) : null);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -1302,13 +1302,13 @@ class JsKernelToElementMap implements JsToElementMap, IrToElementMap {
|
|||
|
||||
Selector getGetterSelector(ir.Name irName) {
|
||||
Name name = new Name(
|
||||
irName.name, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
irName.text, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
return new Selector.getter(name);
|
||||
}
|
||||
|
||||
Selector getSetterSelector(ir.Name irName) {
|
||||
Name name = new Name(
|
||||
irName.name, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
irName.text, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
return new Selector.setter(name);
|
||||
}
|
||||
|
||||
|
@ -2140,7 +2140,7 @@ class JsKernelToElementMap implements JsToElementMap, IrToElementMap {
|
|||
if (node.kind == ir.ProcedureKind.Factory) {
|
||||
parts.add(utils.reconstructConstructorName(getMember(node)));
|
||||
} else {
|
||||
parts.add(utils.operatorNameToIdentifier(node.name.name));
|
||||
parts.add(utils.operatorNameToIdentifier(node.name.text));
|
||||
}
|
||||
} else if (node is ir.Constructor) {
|
||||
parts.add(utils.reconstructConstructorName(getMember(node)));
|
||||
|
|
|
@ -53,7 +53,7 @@ class KernelDeferredLoadTask extends DeferredLoadTask {
|
|||
ir.Member node = _elementMap.getMemberNode(element);
|
||||
return _findImportsTo(
|
||||
node is ir.Constructor ? node.enclosingClass : node,
|
||||
node is ir.Constructor ? node.enclosingClass.name : node.name.name,
|
||||
node is ir.Constructor ? node.enclosingClass.name : node.name.text,
|
||||
node.enclosingLibrary,
|
||||
library);
|
||||
}
|
||||
|
|
|
@ -439,7 +439,7 @@ class KernelToElementMapImpl implements KernelToElementMap, IrToElementMap {
|
|||
while (superclass != null) {
|
||||
KClassEnv env = classes.getEnv(superclass);
|
||||
MemberEntity superMember =
|
||||
env.lookupMember(this, name.name, setter: setter);
|
||||
env.lookupMember(this, name.text, setter: setter);
|
||||
if (superMember != null) {
|
||||
if (!superMember.isInstanceMember) return null;
|
||||
if (!superMember.isAbstract) {
|
||||
|
@ -826,7 +826,7 @@ class KernelToElementMapImpl implements KernelToElementMap, IrToElementMap {
|
|||
@override
|
||||
Name getName(ir.Name name) {
|
||||
return new Name(
|
||||
name.name, name.isPrivate ? getLibrary(name.library) : null);
|
||||
name.text, name.isPrivate ? getLibrary(name.library) : null);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -887,13 +887,13 @@ class KernelToElementMapImpl implements KernelToElementMap, IrToElementMap {
|
|||
|
||||
Selector getGetterSelector(ir.Name irName) {
|
||||
Name name = new Name(
|
||||
irName.name, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
irName.text, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
return new Selector.getter(name);
|
||||
}
|
||||
|
||||
Selector getSetterSelector(ir.Name irName) {
|
||||
Name name = new Name(
|
||||
irName.name, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
irName.text, irName.isPrivate ? getLibrary(irName.library) : null);
|
||||
return new Selector.setter(name);
|
||||
}
|
||||
|
||||
|
@ -1534,7 +1534,7 @@ class KernelToElementMapImpl implements KernelToElementMap, IrToElementMap {
|
|||
@override
|
||||
ForeignKind getForeignKind(ir.StaticInvocation node) {
|
||||
if (commonElements.isForeignHelper(getMember(node.target))) {
|
||||
switch (node.target.name.name) {
|
||||
switch (node.target.name.text) {
|
||||
case Identifiers.JS:
|
||||
return ForeignKind.JS;
|
||||
case Identifiers.JS_BUILTIN:
|
||||
|
@ -2037,7 +2037,7 @@ class KernelNativeMemberResolver implements NativeMemberResolver {
|
|||
/// defaulting to the Dart name.
|
||||
void _setNativeName(ir.Member node, IrAnnotationData annotationData) {
|
||||
String name = _findJsNameFromAnnotation(node, annotationData);
|
||||
name ??= node.name.name;
|
||||
name ??= node.name.text;
|
||||
_nativeDataBuilder.setNativeMemberName(_elementMap.getMember(node), name);
|
||||
}
|
||||
|
||||
|
@ -2052,7 +2052,7 @@ class KernelNativeMemberResolver implements NativeMemberResolver {
|
|||
void _setNativeNameForStaticMethod(
|
||||
ir.Member node, IrAnnotationData annotationData) {
|
||||
String name = _findJsNameFromAnnotation(node, annotationData);
|
||||
name ??= node.name.name;
|
||||
name ??= node.name.text;
|
||||
if (_isIdentifier(name)) {
|
||||
ClassEntity cls = _elementMap.getClass(node.enclosingClass);
|
||||
List<String> nativeNames = _nativeBasicData.getNativeTagsOfClass(cls);
|
||||
|
|
|
@ -125,14 +125,14 @@ class KLibraryEnv {
|
|||
}
|
||||
if (member is ir.Procedure) {
|
||||
if (member.kind == ir.ProcedureKind.Setter) {
|
||||
_setterMap[member.name.name] = member;
|
||||
_setterMap[member.name.text] = member;
|
||||
} else {
|
||||
_memberMap[member.name.name] = member;
|
||||
_memberMap[member.name.text] = member;
|
||||
}
|
||||
} else if (member is ir.Field) {
|
||||
_memberMap[member.name.name] = member;
|
||||
_memberMap[member.name.text] = member;
|
||||
if (member.isMutable) {
|
||||
_setterMap[member.name.name] = member;
|
||||
_setterMap[member.name.text] = member;
|
||||
}
|
||||
} else {
|
||||
failedAt(
|
||||
|
@ -379,7 +379,7 @@ class KClassEnvImpl implements KClassEnv {
|
|||
void addField(ir.Field member, {bool includeStatic}) {
|
||||
if (!includeStatic && member.isStatic) return;
|
||||
if (isRedirectingFactoryField(member)) return;
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
_memberMap[name] = member;
|
||||
if (member.isMutable) {
|
||||
_setterMap[name] = member;
|
||||
|
@ -399,7 +399,7 @@ class KClassEnvImpl implements KClassEnv {
|
|||
return;
|
||||
}
|
||||
}
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
if (member.kind == ir.ProcedureKind.Factory) {
|
||||
if (isRedirectingFactory(member)) {
|
||||
// Don't include redirecting factories.
|
||||
|
@ -420,7 +420,7 @@ class KClassEnvImpl implements KClassEnv {
|
|||
|
||||
void addConstructors(ir.Class c) {
|
||||
for (ir.Constructor member in c.constructors) {
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
_constructorMap[name] = member;
|
||||
}
|
||||
}
|
||||
|
@ -487,7 +487,7 @@ class KClassEnvImpl implements KClassEnv {
|
|||
var forwardingConstructor = _buildForwardingConstructor(
|
||||
superclassCloner, superclassConstructor);
|
||||
cls.addMember(forwardingConstructor);
|
||||
_constructorMap[forwardingConstructor.name.name] =
|
||||
_constructorMap[forwardingConstructor.name.text] =
|
||||
forwardingConstructor;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ class KernelNoSuchMethodResolver implements NoSuchMethodResolver {
|
|||
expr = asExpression.operand;
|
||||
}
|
||||
if (expr is ir.SuperMethodInvocation &&
|
||||
expr.name.name == Identifiers.noSuchMethod_) {
|
||||
expr.name.text == Identifiers.noSuchMethod_) {
|
||||
ir.Arguments arguments = expr.arguments;
|
||||
if (arguments.positional.length == 1 &&
|
||||
arguments.named.isEmpty &&
|
||||
|
|
|
@ -36,7 +36,7 @@ String _computeMemberName(ir.Member member) {
|
|||
// other libraries.
|
||||
return null;
|
||||
}
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
if (member is ir.Constructor) {
|
||||
name = '.$name';
|
||||
} else if (member is ir.Procedure) {
|
||||
|
|
|
@ -763,7 +763,7 @@ abstract class DataSinkMixin implements DataSink {
|
|||
|
||||
@override
|
||||
void writeName(ir.Name value) {
|
||||
writeString(value.name);
|
||||
writeString(value.text);
|
||||
writeValueOrNull(value.library, writeLibraryNode);
|
||||
}
|
||||
|
||||
|
|
|
@ -4239,7 +4239,7 @@ class KernelSsaGraphBuilder extends ir.Visitor {
|
|||
return '$count ${adjective}arguments';
|
||||
}
|
||||
|
||||
String name() => invocation.target.name.name;
|
||||
String name() => invocation.target.name.text;
|
||||
|
||||
ir.Arguments arguments = invocation.arguments;
|
||||
bool bad = false;
|
||||
|
|
|
@ -206,7 +206,7 @@ main(List<String> args) {
|
|||
void testMember(String idPrefix, ir.Member member,
|
||||
{bool implicitJsInteropMember, bool implicitNativeMember}) {
|
||||
if (memberIsIgnorable(member)) return;
|
||||
String memberId = '$idPrefix::${member.name.name}';
|
||||
String memberId = '$idPrefix::${member.name.text}';
|
||||
MemberEntity memberEntity = elementMap.getMember(member);
|
||||
|
||||
String expectedJsInteropMemberName =
|
||||
|
|
|
@ -472,7 +472,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// publicly exposed JS API for a library.
|
||||
|
||||
var node = export.node;
|
||||
if (node is Procedure && node.name.name == 'main') {
|
||||
if (node is Procedure && node.name.text == 'main') {
|
||||
// Don't allow redefining names from this library.
|
||||
var name = _emitTopLevelName(export.node);
|
||||
moduleItems.add(js.statement(
|
||||
|
@ -853,7 +853,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
_currentUri = ctor.enclosingClass.fileUri;
|
||||
var jsParams = _emitParameters(ctor.function, isForwarding: true);
|
||||
_currentUri = savedUri;
|
||||
var name = ctor.name.name;
|
||||
var name = ctor.name.text;
|
||||
var ctorBody = [
|
||||
if (mixinCtor != null) mixinCtor,
|
||||
if (name != '' || hasUnnamedSuper)
|
||||
|
@ -977,7 +977,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
var fields = c.fields;
|
||||
for (var ctor in c.constructors) {
|
||||
if (ctor.isExternal) continue;
|
||||
addConstructor(ctor.name.name, _emitConstructor(ctor, fields, className));
|
||||
addConstructor(ctor.name.text, _emitConstructor(ctor, fields, className));
|
||||
}
|
||||
|
||||
// If classElement has only factory constructors, and it can be mixed in,
|
||||
|
@ -1115,7 +1115,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// We know enum fields can be safely emitted as const fields, as long
|
||||
// as the `values` field is emitted last.
|
||||
var classRef = _emitTopLevelName(c);
|
||||
var valueField = fields.firstWhere((f) => f.name.name == 'values');
|
||||
var valueField = fields.firstWhere((f) => f.name.text == 'values');
|
||||
fields.remove(valueField);
|
||||
fields.add(valueField);
|
||||
for (var f in fields) {
|
||||
|
@ -1123,13 +1123,13 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
body.add(defineValueOnClass(
|
||||
c,
|
||||
classRef,
|
||||
_emitStaticMemberName(f.name.name),
|
||||
_emitStaticMemberName(f.name.text),
|
||||
_visitInitializer(f.initializer, f.annotations))
|
||||
.toStatement());
|
||||
}
|
||||
} else if (fields.isNotEmpty) {
|
||||
body.add(_emitLazyFields(_emitTopLevelName(c), fields,
|
||||
(n) => _emitStaticMemberName(n.name.name)));
|
||||
(n) => _emitStaticMemberName(n.name.text)));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1232,7 +1232,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// nor can they be torn off.
|
||||
if (member.isStatic) continue;
|
||||
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
var reifiedType = _memberRuntimeType(member, c) as FunctionType;
|
||||
|
||||
// Don't add redundant signatures for inherited methods whose signature
|
||||
|
@ -1379,7 +1379,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// Also for const constructors we need to ensure default values are
|
||||
// available for use by top-level constant initializers.
|
||||
var fn = node.function;
|
||||
var body = _emitArgumentInitializers(fn, node.name.name);
|
||||
var body = _emitArgumentInitializers(fn, node.name.text);
|
||||
|
||||
// Redirecting constructors: these are not allowed to have initializers,
|
||||
// and the redirecting ctor invocation runs before field initializers.
|
||||
|
@ -1427,7 +1427,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// derived class constructor with the same name.
|
||||
return js.statement('#.#.call(this, #);', [
|
||||
className,
|
||||
_constructorName(ctor.name.name),
|
||||
_constructorName(ctor.name.text),
|
||||
_emitArgumentList(node.arguments, types: false)
|
||||
]);
|
||||
}
|
||||
|
@ -1449,10 +1449,10 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// We can skip the super call if it's empty. Most commonly this happens for
|
||||
// things that extend Object, and don't have any field initializers or their
|
||||
// own default constructor.
|
||||
if (ctor.name.name == '' && !_hasUnnamedSuperConstructor(c)) {
|
||||
if (ctor.name.text == '' && !_hasUnnamedSuperConstructor(c)) {
|
||||
return null;
|
||||
}
|
||||
return _emitSuperConstructorCall(className, ctor.name.name, args);
|
||||
return _emitSuperConstructorCall(className, ctor.name.text, args);
|
||||
}
|
||||
|
||||
js_ast.Statement _emitSuperConstructorCall(
|
||||
|
@ -1626,9 +1626,9 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
for (var m in c.procedures) {
|
||||
if (m.isAbstract) continue;
|
||||
if (m.isGetter) {
|
||||
getters[m.name.name] = m;
|
||||
getters[m.name.text] = m;
|
||||
} else if (m.isSetter) {
|
||||
setters[m.name.name] = m;
|
||||
setters[m.name.text] = m;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1655,7 +1655,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
} else if (m.isAccessor) {
|
||||
jsMethods.add(_emitMethodDeclaration(m));
|
||||
jsMethods.add(_emitSuperAccessorWrapper(m, getters, setters));
|
||||
if (!hasJsPeer && m.isGetter && m.name.name == 'iterator') {
|
||||
if (!hasJsPeer && m.isGetter && m.name.text == 'iterator') {
|
||||
hasIterator = true;
|
||||
jsMethods.add(_emitIterable(c));
|
||||
}
|
||||
|
@ -1719,7 +1719,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
}
|
||||
fn = _emitNativeFunctionBody(member);
|
||||
} else {
|
||||
fn = _emitFunction(member.function, member.name.name);
|
||||
fn = _emitFunction(member.function, member.name.text);
|
||||
}
|
||||
|
||||
return js_ast.Method(_declareMemberName(member), fn,
|
||||
|
@ -1730,7 +1730,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
}
|
||||
|
||||
js_ast.Fun _emitNativeFunctionBody(Procedure node) {
|
||||
var name = _annotationName(node, isJSAnnotation) ?? node.name.name;
|
||||
var name = _annotationName(node, isJSAnnotation) ?? node.name.text;
|
||||
if (node.isGetter) {
|
||||
return js_ast.Fun([], js.block('{ return this.#; }', [name]));
|
||||
} else if (node.isSetter) {
|
||||
|
@ -1850,7 +1850,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
/// If a future Dart version allows factory constructors to take their
|
||||
/// own type parameters, this will need to be changed to call
|
||||
/// [_emitFunction] instead.
|
||||
var name = node.name.name;
|
||||
var name = node.name.text;
|
||||
var jsBody = _emitSyncFunctionBody(function, name);
|
||||
|
||||
return js_ast.Method(
|
||||
|
@ -1909,7 +1909,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
var jsMethods = <js_ast.Method>[];
|
||||
assert(!field.isStatic);
|
||||
|
||||
var name = _annotationName(field, isJSName) ?? field.name.name;
|
||||
var name = _annotationName(field, isJSName) ?? field.name.text;
|
||||
// Generate getter
|
||||
var fn = js_ast.Fun([], js.block('{ return this.#; }', [name]));
|
||||
var method = js_ast.Method(_declareMemberName(field), fn, isGetter: true);
|
||||
|
@ -1936,7 +1936,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
Map<String, Procedure> getters, Map<String, Procedure> setters) {
|
||||
if (member.isAbstract) return null;
|
||||
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
var memberName = _declareMemberName(member);
|
||||
if (member.isGetter) {
|
||||
if (!setters.containsKey(name) &&
|
||||
|
@ -2068,7 +2068,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
..sourceInformation = _hoverComment(
|
||||
js_ast.PropertyAccess(objExpr, access),
|
||||
field.fileOffset,
|
||||
field.name.name.length));
|
||||
field.name.text.length));
|
||||
|
||||
// TODO(jmesserly): currently uses a dummy setter to indicate writable.
|
||||
if (!field.isFinal && !field.isConst) {
|
||||
|
@ -2117,7 +2117,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
/// Unlike call sites, we always have an element available, so we can use it
|
||||
/// directly rather than computing the relevant options for [_emitMemberName].
|
||||
js_ast.Expression _declareMemberName(Member m, {bool useExtension}) {
|
||||
return _emitMemberName(m.name.name,
|
||||
return _emitMemberName(m.name.text,
|
||||
isStatic: m is Field ? m.isStatic : (m as Procedure).isStatic,
|
||||
useExtension:
|
||||
useExtension ?? _extensionTypes.isNativeClass(m.enclosingClass),
|
||||
|
@ -2348,8 +2348,8 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
if (m is Procedure) {
|
||||
if (m.isExternal) return true;
|
||||
if (m.isNoSuchMethodForwarder) {
|
||||
if (renamedJsMembers.contains(m.name.name)) {
|
||||
return _hasExternalProcedure(m.enclosingClass, m.name.name);
|
||||
if (renamedJsMembers.contains(m.name.text)) {
|
||||
return _hasExternalProcedure(m.enclosingClass, m.name.text);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2373,7 +2373,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
];
|
||||
classes.addAll(classesToCheck);
|
||||
for (var procedure in c.procedures) {
|
||||
if (procedure.name.name == name && !procedure.isNoSuchMethodForwarder) {
|
||||
if (procedure.name.text == name && !procedure.isNoSuchMethodForwarder) {
|
||||
return procedure.isExternal;
|
||||
}
|
||||
}
|
||||
|
@ -2430,9 +2430,9 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
_staticTypeContext.enterMember(node);
|
||||
_currentUri = node.fileUri;
|
||||
|
||||
var name = node.name.name;
|
||||
var name = node.name.text;
|
||||
var result = js_ast.Method(
|
||||
propertyName(name), _emitFunction(node.function, node.name.name),
|
||||
propertyName(name), _emitFunction(node.function, node.name.text),
|
||||
isGetter: node.isGetter, isSetter: node.isSetter)
|
||||
..sourceInformation = _nodeEnd(node.fileEndOffset);
|
||||
|
||||
|
@ -2447,7 +2447,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
_currentUri = p.fileUri;
|
||||
|
||||
var body = <js_ast.Statement>[];
|
||||
var fn = _emitFunction(p.function, p.name.name)
|
||||
var fn = _emitFunction(p.function, p.name.text)
|
||||
..sourceInformation = _nodeEnd(p.fileEndOffset);
|
||||
|
||||
if (_currentLibrary.importUri.scheme == 'dart' &&
|
||||
|
@ -2457,7 +2457,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
var nameExpr = _emitTopLevelName(p);
|
||||
body.add(js.statement('# = #',
|
||||
[nameExpr, js_ast.NamedFunction(_emitTemporaryId(p.name.name), fn)]));
|
||||
[nameExpr, js_ast.NamedFunction(_emitTemporaryId(p.name.text), fn)]));
|
||||
|
||||
_currentUri = savedUri;
|
||||
_staticTypeContext.leaveMember(p);
|
||||
|
@ -2871,7 +2871,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
js_ast.Expression _emitConstructorName(InterfaceType type, Member c) {
|
||||
return _emitJSInterop(type.classNode) ??
|
||||
js_ast.PropertyAccess(
|
||||
_emitConstructorAccess(type), _constructorName(c.name.name));
|
||||
_emitConstructorAccess(type), _constructorName(c.name.text));
|
||||
}
|
||||
|
||||
/// Emits an expression that lets you access statics on an [c] from code.
|
||||
|
@ -3014,7 +3014,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// assign directly to [virtualField]. If the latter, copy the old
|
||||
// variable to [virtualField].
|
||||
var symbol = emitClassPrivateNameSymbol(c.enclosingLibrary,
|
||||
getLocalClassName(c), field.name.name, virtualField);
|
||||
getLocalClassName(c), field.name.text, virtualField);
|
||||
if (symbol != virtualField) {
|
||||
body.add(js.statement('const # = #;', [virtualField, symbol]));
|
||||
}
|
||||
|
@ -3794,7 +3794,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
_emitConstructorName(
|
||||
streamIterator,
|
||||
_asyncStreamIteratorClass.procedures
|
||||
.firstWhere((p) => p.isFactory && p.name.name == '')),
|
||||
.firstWhere((p) => p.isFactory && p.name.text == '')),
|
||||
[_visitExpression(node.iterable)]);
|
||||
|
||||
var iter = _emitTemporaryId('iter');
|
||||
|
@ -4172,13 +4172,13 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
@override
|
||||
js_ast.Expression visitPropertyGet(PropertyGet node) {
|
||||
return _emitPropertyGet(
|
||||
node.receiver, node.interfaceTarget, node.name.name);
|
||||
node.receiver, node.interfaceTarget, node.name.text);
|
||||
}
|
||||
|
||||
@override
|
||||
js_ast.Expression visitPropertySet(PropertySet node) {
|
||||
return _emitPropertySet(
|
||||
node.receiver, node.interfaceTarget, node.value, node.name.name);
|
||||
node.receiver, node.interfaceTarget, node.value, node.name.text);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -4193,7 +4193,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
js_ast.Expression _emitPropertyGet(Expression receiver, Member member,
|
||||
[String memberName]) {
|
||||
memberName ??= member.name.name;
|
||||
memberName ??= member.name.text;
|
||||
// TODO(jmesserly): should tearoff of `.call` on a function type be
|
||||
// encoded as a different node, or possibly eliminated?
|
||||
// (Regardless, we'll still need to handle the callable JS interop classes.)
|
||||
|
@ -4244,7 +4244,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
Expression receiver, Member member, Expression value,
|
||||
[String memberName]) {
|
||||
var jsName =
|
||||
_emitMemberName(memberName ?? member.name.name, member: member);
|
||||
_emitMemberName(memberName ?? member.name.text, member: member);
|
||||
|
||||
if (member != null && isJsMember(member)) {
|
||||
value = _assertInterop(value);
|
||||
|
@ -4316,7 +4316,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
js_ast.Expression _emitMethodCall(Expression receiver, Member target,
|
||||
Arguments arguments, InvocationExpression node) {
|
||||
var name = node.name.name;
|
||||
var name = node.name.text;
|
||||
if (isOperatorMethodName(name) && arguments.named.isEmpty) {
|
||||
var argLength = arguments.positional.length;
|
||||
if (argLength == 0) {
|
||||
|
@ -4425,7 +4425,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
js_ast.Expression _emitUnaryOperator(
|
||||
Expression expr, Member target, InvocationExpression node) {
|
||||
var op = node.name.name;
|
||||
var op = node.name.text;
|
||||
if (target != null) {
|
||||
var dispatchType = _coreTypes.legacyRawType(target.enclosingClass);
|
||||
if (_typeRep.unaryOperationIsPrimitive(dispatchType)) {
|
||||
|
@ -4463,7 +4463,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// comparison, e.g. `a & ~b == 0`.
|
||||
if (parent is InvocationExpression &&
|
||||
parent.arguments.positional.length == 1) {
|
||||
var op = parent.name.name;
|
||||
var op = parent.name.text;
|
||||
var left = getInvocationReceiver(parent);
|
||||
var right = parent.arguments.positional[0];
|
||||
if (left != null && op == '==') {
|
||||
|
@ -4482,7 +4482,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
}
|
||||
|
||||
bool _nodeIsBitwiseOperation(InvocationExpression node) {
|
||||
switch (node.name.name) {
|
||||
switch (node.name.text) {
|
||||
case '&':
|
||||
case '|':
|
||||
case '^':
|
||||
|
@ -4516,7 +4516,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
var parent = node.parent;
|
||||
if (parent == null) return false;
|
||||
if (parent is InvocationExpression && _nodeIsBitwiseOperation(parent)) {
|
||||
if (parent.name.name == '&' && parent.arguments.positional.length == 1) {
|
||||
if (parent.name.text == '&' && parent.arguments.positional.length == 1) {
|
||||
var left = getInvocationReceiver(parent);
|
||||
var right = parent.arguments.positional[0];
|
||||
final MAX = (1 << width) - 1;
|
||||
|
@ -4546,7 +4546,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
var left = getInvocationReceiver(expr);
|
||||
var right = expr.arguments.positional[0];
|
||||
if (left != null) {
|
||||
switch (expr.name.name) {
|
||||
switch (expr.name.text) {
|
||||
case '&':
|
||||
return min(bitWidth(left, depth), bitWidth(right, depth));
|
||||
|
||||
|
@ -4590,7 +4590,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
js_ast.Expression _emitBinaryOperator(Expression left, Member target,
|
||||
Expression right, InvocationExpression node) {
|
||||
var op = node.name.name;
|
||||
var op = node.name.text;
|
||||
if (op == '==') return _emitEqualityOperator(left, target, right);
|
||||
|
||||
// TODO(jmesserly): using the target type here to work around:
|
||||
|
@ -4787,7 +4787,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
/// Emits the [js_ast.PropertyAccess] for accessors or method calls to
|
||||
/// [jsTarget].[jsName], replacing `super` if it is not allowed in scope.
|
||||
js_ast.PropertyAccess _emitSuperTarget(Member member, {bool setter = false}) {
|
||||
var jsName = _emitMemberName(member.name.name, member: member);
|
||||
var jsName = _emitMemberName(member.name.text, member: member);
|
||||
if (member is Field && !_virtualFields.isVirtual(member)) {
|
||||
return js_ast.PropertyAccess(js_ast.This(), jsName);
|
||||
}
|
||||
|
@ -4795,7 +4795,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
// If we can't emit `super` in this context, generate a helper that does it
|
||||
// for us, and call the helper.
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
var jsMethod = _superHelpers.putIfAbsent(name, () {
|
||||
var isAccessor = member is Procedure ? member.isAccessor : true;
|
||||
if (isAccessor) {
|
||||
|
@ -4836,7 +4836,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
|
||||
// Optimize some internal SDK calls.
|
||||
if (isSdkInternalRuntime(target.enclosingLibrary)) {
|
||||
var name = target.name.name;
|
||||
var name = target.name.text;
|
||||
if (node.arguments.positional.isEmpty) {
|
||||
if (name == 'typeRep') {
|
||||
return _emitType(node.arguments.types.single);
|
||||
|
@ -4903,7 +4903,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
}
|
||||
|
||||
bool _isDebuggerCall(Procedure target) {
|
||||
return target.name.name == 'debugger' &&
|
||||
return target.name.text == 'debugger' &&
|
||||
target.enclosingLibrary.importUri.toString() == 'dart:developer';
|
||||
}
|
||||
|
||||
|
@ -4955,12 +4955,12 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
var nativeName = _extensionTypes.getNativePeers(c);
|
||||
if (nativeName.isNotEmpty) {
|
||||
var memberName = _annotationName(target, isJSName) ??
|
||||
_emitStaticMemberName(target.name.name, target);
|
||||
_emitStaticMemberName(target.name.text, target);
|
||||
return runtimeCall('global.#.#', [nativeName[0], memberName]);
|
||||
}
|
||||
}
|
||||
return js_ast.PropertyAccess(_emitStaticClassName(c),
|
||||
_emitStaticMemberName(target.name.name, target));
|
||||
_emitStaticMemberName(target.name.text, target));
|
||||
}
|
||||
return _emitTopLevelName(target);
|
||||
}
|
||||
|
@ -5140,9 +5140,9 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
case 'Map':
|
||||
case 'HashMap':
|
||||
case 'LinkedHashMap':
|
||||
if (ctor.name.name == '') {
|
||||
if (ctor.name.text == '') {
|
||||
return js.call('new #.new()', _emitMapImplType(type));
|
||||
} else if (ctor.name.name == 'identity') {
|
||||
} else if (ctor.name.text == 'identity') {
|
||||
return js.call(
|
||||
'new #.new()', _emitMapImplType(type, identity: true));
|
||||
}
|
||||
|
@ -5150,15 +5150,15 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
case 'Set':
|
||||
case 'HashSet':
|
||||
case 'LinkedHashSet':
|
||||
if (ctor.name.name == '') {
|
||||
if (ctor.name.text == '') {
|
||||
return js.call('new #.new()', _emitSetImplType(type));
|
||||
} else if (ctor.name.name == 'identity') {
|
||||
} else if (ctor.name.text == 'identity') {
|
||||
return js.call(
|
||||
'new #.new()', _emitSetImplType(type, identity: true));
|
||||
}
|
||||
break;
|
||||
case 'List':
|
||||
if (ctor.name.name == '' && type is InterfaceType) {
|
||||
if (ctor.name.text == '' && type is InterfaceType) {
|
||||
return _emitList(type.typeArguments[0], []);
|
||||
}
|
||||
break;
|
||||
|
@ -5211,11 +5211,11 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
@override
|
||||
js_ast.Expression visitNot(Not node) {
|
||||
var operand = node.operand;
|
||||
if (operand is MethodInvocation && operand.name.name == '==') {
|
||||
if (operand is MethodInvocation && operand.name.text == '==') {
|
||||
return _emitEqualityOperator(operand.receiver, operand.interfaceTarget,
|
||||
operand.arguments.positional[0],
|
||||
negated: true);
|
||||
} else if (operand is DirectMethodInvocation && operand.name.name == '==') {
|
||||
} else if (operand is DirectMethodInvocation && operand.name.text == '==') {
|
||||
return _emitEqualityOperator(
|
||||
operand.receiver, operand.target, operand.arguments.positional[0],
|
||||
negated: true);
|
||||
|
@ -5796,9 +5796,9 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// directly. Otherwise, use a private symbol in case the field
|
||||
// was overridden.
|
||||
var symbol = cls.isEnum
|
||||
? _emitMemberName(member.name.name, member: member)
|
||||
? _emitMemberName(member.name.text, member: member)
|
||||
: emitClassPrivateNameSymbol(
|
||||
cls.enclosingLibrary, getLocalClassName(cls), member.name.name);
|
||||
cls.enclosingLibrary, getLocalClassName(cls), member.name.text);
|
||||
return js_ast.Property(symbol, constant);
|
||||
}
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ class DevCompilerConstants {
|
|||
var constant = node.constant;
|
||||
if (constant is InstanceConstant) {
|
||||
var value = constant.fieldValues.entries
|
||||
.firstWhere((e) => e.key.asField.name.name == name,
|
||||
.firstWhere((e) => e.key.asField.name.text == name,
|
||||
orElse: () => null)
|
||||
?.value;
|
||||
if (value is PrimitiveConstant) return value.value;
|
||||
|
|
|
@ -177,28 +177,28 @@ class PrivateFieldsVisitor extends Visitor<void> {
|
|||
@override
|
||||
void visitFieldReference(Field node) {
|
||||
if (node.name.isPrivate) {
|
||||
privateFields[node.name.name] = node.name.library.importUri.toString();
|
||||
privateFields[node.name.text] = node.name.library.importUri.toString();
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void visitField(Field node) {
|
||||
if (node.name.isPrivate) {
|
||||
privateFields[node.name.name] = node.name.library.importUri.toString();
|
||||
privateFields[node.name.text] = node.name.library.importUri.toString();
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void visitPropertyGet(PropertyGet node) {
|
||||
if (node.name.isPrivate) {
|
||||
privateFields[node.name.name] = node.name.library.importUri.toString();
|
||||
privateFields[node.name.text] = node.name.library.importUri.toString();
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void visitPropertySet(PropertySet node) {
|
||||
if (node.name.isPrivate) {
|
||||
privateFields[node.name.name] = node.name.library.importUri.toString();
|
||||
privateFields[node.name.text] = node.name.library.importUri.toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ bool isAllowInterop(Expression node) {
|
|||
if (node is StaticInvocation) {
|
||||
var target = node.target;
|
||||
return _isLibrary(target.enclosingLibrary, ['dart:js']) &&
|
||||
target.name.name == 'allowInterop';
|
||||
target.name.text == 'allowInterop';
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ bool isJSExportNameAnnotation(Expression value) =>
|
|||
/// Whether [i] is a `spread` invocation (to be used on function arguments
|
||||
/// to have them compiled as `...` spread args in ES6 outputs).
|
||||
bool isJSSpreadInvocation(Procedure target) =>
|
||||
target.name.name == 'spread' && _isJSLibrary(target.enclosingLibrary);
|
||||
target.name.text == 'spread' && _isJSLibrary(target.enclosingLibrary);
|
||||
|
||||
bool isJSName(Expression value) =>
|
||||
isBuiltinAnnotation(value, '_js_helper', 'JSName');
|
||||
|
|
|
@ -8,7 +8,7 @@ import 'package:kernel/core_types.dart';
|
|||
import 'package:kernel/kernel.dart';
|
||||
|
||||
Constructor unnamedConstructor(Class c) =>
|
||||
c.constructors.firstWhere((c) => c.name.name == '', orElse: () => null);
|
||||
c.constructors.firstWhere((c) => c.name.text == '', orElse: () => null);
|
||||
|
||||
/// Returns the enclosing library for reference [node].
|
||||
Library getLibrary(NamedNode node) {
|
||||
|
@ -47,10 +47,10 @@ String getLocalClassName(Class node) => escapeIdentifier(node.name);
|
|||
String getTypeParameterName(TypeParameter node) => escapeIdentifier(node.name);
|
||||
|
||||
String getTopLevelName(NamedNode n) {
|
||||
if (n is Procedure) return n.name.name;
|
||||
if (n is Procedure) return n.name.text;
|
||||
if (n is Class) return n.name;
|
||||
if (n is Typedef) return n.name;
|
||||
if (n is Field) return n.name.name;
|
||||
if (n is Field) return n.name.text;
|
||||
return n.canonicalName?.name;
|
||||
}
|
||||
|
||||
|
@ -152,7 +152,7 @@ bool isOperatorMethodName(String name) {
|
|||
bool isFromEnvironmentInvocation(CoreTypes coreTypes, StaticInvocation node) {
|
||||
var target = node.target;
|
||||
return node.isConst &&
|
||||
target.name.name == 'fromEnvironment' &&
|
||||
target.name.text == 'fromEnvironment' &&
|
||||
target.enclosingLibrary == coreTypes.coreLibrary;
|
||||
}
|
||||
|
||||
|
@ -197,7 +197,7 @@ Expression getInvocationReceiver(InvocationExpression node) =>
|
|||
|
||||
bool isInlineJS(Member e) =>
|
||||
e is Procedure &&
|
||||
e.name.name == 'JS' &&
|
||||
e.name.text == 'JS' &&
|
||||
e.enclosingLibrary.importUri.toString() == 'dart:_foreign_helper';
|
||||
|
||||
/// Whether the parameter [p] is covariant (either explicitly `covariant` or
|
||||
|
|
|
@ -110,15 +110,15 @@ class NullableInference extends ExpressionVisitor<bool> {
|
|||
|
||||
@override
|
||||
bool visitMethodInvocation(MethodInvocation node) => _invocationIsNullable(
|
||||
node.interfaceTarget, node.name.name, node.receiver);
|
||||
node.interfaceTarget, node.name.text, node.receiver);
|
||||
|
||||
@override
|
||||
bool visitDirectMethodInvocation(DirectMethodInvocation node) =>
|
||||
_invocationIsNullable(node.target, node.name.name, node.receiver);
|
||||
_invocationIsNullable(node.target, node.name.text, node.receiver);
|
||||
|
||||
@override
|
||||
bool visitSuperMethodInvocation(SuperMethodInvocation node) =>
|
||||
_invocationIsNullable(node.interfaceTarget, node.name.name);
|
||||
_invocationIsNullable(node.interfaceTarget, node.name.text);
|
||||
|
||||
bool _invocationIsNullable(Member target, String name,
|
||||
[Expression receiver]) {
|
||||
|
@ -127,7 +127,7 @@ class NullableInference extends ExpressionVisitor<bool> {
|
|||
// https://github.com/dart-lang/sdk/issues/31854
|
||||
if (name == '==') return false;
|
||||
if (target == null) return true; // dynamic call
|
||||
if (target.name.name == 'toString' &&
|
||||
if (target.name.text == 'toString' &&
|
||||
receiver != null &&
|
||||
receiver.getStaticType(_staticTypeContext) ==
|
||||
coreTypes.stringLegacyRawType) {
|
||||
|
@ -188,7 +188,7 @@ class NullableInference extends ExpressionVisitor<bool> {
|
|||
typeString.split('|').contains('Null');
|
||||
}
|
||||
}
|
||||
return _invocationIsNullable(target, node.name.name);
|
||||
return _invocationIsNullable(target, node.name.text);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -274,7 +274,7 @@ class NullableInference extends ExpressionVisitor<bool> {
|
|||
if (node is StaticGet) {
|
||||
var t = node.target;
|
||||
return t is Field &&
|
||||
t.name.name == fieldName &&
|
||||
t.name.text == fieldName &&
|
||||
_isInternalSdkAnnotation(t.enclosingLibrary);
|
||||
}
|
||||
return false;
|
||||
|
|
|
@ -85,7 +85,7 @@ class _LibraryVirtualFieldModel {
|
|||
Map<String, Field> getInstanceFieldMap(Class c) {
|
||||
var instanceFields = c.fields.where((f) => !f.isStatic);
|
||||
return HashMap.fromIterables(
|
||||
instanceFields.map((f) => f.name.name), instanceFields);
|
||||
instanceFields.map((f) => f.name.text), instanceFields);
|
||||
}
|
||||
|
||||
var allFields =
|
||||
|
@ -129,7 +129,7 @@ class _LibraryVirtualFieldModel {
|
|||
|
||||
// Look in all super classes to see if we're overriding a field in our
|
||||
// library, if so mark that field as overridden.
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
_overriddenPrivateFields.addAll(superclasses
|
||||
.map((c) => allFields[c][name])
|
||||
.where((f) => f != null));
|
||||
|
@ -228,7 +228,7 @@ class ClassPropertyModel {
|
|||
continue;
|
||||
}
|
||||
|
||||
var name = member.name.name;
|
||||
var name = member.name.text;
|
||||
if (member is Field) {
|
||||
inheritedGetters.add(name);
|
||||
if (!member.isFinal) inheritedSetters.add(name);
|
||||
|
@ -253,7 +253,7 @@ class ClassPropertyModel {
|
|||
// Also ignore abstract fields.
|
||||
if (field.isAbstract || field.isStatic) continue;
|
||||
|
||||
var name = field.name.name;
|
||||
var name = field.name.text;
|
||||
if (virtualAccessorNames.contains(name) ||
|
||||
fieldModel.isVirtual(field) ||
|
||||
field.isCovariant ||
|
||||
|
@ -328,7 +328,7 @@ class ClassPropertyModel {
|
|||
// we've seen, and visit starting from the class, then mixins in
|
||||
// reverse order, then superclasses.
|
||||
for (var m in c.members) {
|
||||
var name = m.name.name;
|
||||
var name = m.name.text;
|
||||
if (m.isAbstract || m is Constructor) continue;
|
||||
if (m is Procedure) {
|
||||
if (m.isStatic) continue;
|
||||
|
@ -352,7 +352,7 @@ class ClassPropertyModel {
|
|||
for (var m in c.members) {
|
||||
if (!m.name.isPrivate &&
|
||||
(m is Procedure && !m.isStatic || m is Field && !m.isStatic)) {
|
||||
members.add(m.name.name);
|
||||
members.add(m.name.text);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -181,7 +181,7 @@ class DevCompilerTarget extends Target {
|
|||
var ctor = coreTypes.index
|
||||
.getClass('dart:core', '_Invocation')
|
||||
.constructors
|
||||
.firstWhere((c) => c.name.name == name);
|
||||
.firstWhere((c) => c.name.text == name);
|
||||
return ConstructorInvocation(ctor, Arguments(positional));
|
||||
}
|
||||
|
||||
|
|
|
@ -28,8 +28,8 @@ import '../fasta/kernel/late_lowering.dart';
|
|||
bool isLateLoweredField(Field node) {
|
||||
return node.isInternalImplementation &&
|
||||
node.name != null &&
|
||||
node.name.name.startsWith(lateFieldPrefix) &&
|
||||
!node.name.name.endsWith(lateIsSetSuffix);
|
||||
node.name.text.startsWith(lateFieldPrefix) &&
|
||||
!node.name.text.endsWith(lateIsSetSuffix);
|
||||
}
|
||||
|
||||
/// Returns `true` if [node] is the field holding the marker for whether a
|
||||
|
@ -55,8 +55,8 @@ bool isLateLoweredField(Field node) {
|
|||
bool isLateLoweredIsSetField(Field node) {
|
||||
return node.isInternalImplementation &&
|
||||
node.name != null &&
|
||||
node.name.name.startsWith(lateFieldPrefix) &&
|
||||
node.name.name.endsWith(lateIsSetSuffix);
|
||||
node.name.text.startsWith(lateFieldPrefix) &&
|
||||
node.name.text.endsWith(lateIsSetSuffix);
|
||||
}
|
||||
|
||||
/// Returns `true` if [node] is the getter for reading the value of a lowered
|
||||
|
@ -84,11 +84,11 @@ bool isLateLoweredFieldGetter(Procedure node) {
|
|||
if (parent is Class) {
|
||||
return parent.fields.any((Field field) =>
|
||||
isLateLoweredField(field) &&
|
||||
field.name.name.endsWith(node.name.name));
|
||||
field.name.text.endsWith(node.name.text));
|
||||
} else if (parent is Library) {
|
||||
return parent.fields.any((Field field) =>
|
||||
isLateLoweredField(field) &&
|
||||
field.name.name.endsWith(node.name.name));
|
||||
field.name.text.endsWith(node.name.text));
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@ -119,11 +119,11 @@ bool isLateLoweredFieldSetter(Procedure node) {
|
|||
if (parent is Class) {
|
||||
return parent.fields.any((Field field) =>
|
||||
isLateLoweredField(field) &&
|
||||
field.name.name.endsWith(node.name.name));
|
||||
field.name.text.endsWith(node.name.text));
|
||||
} else if (parent is Library) {
|
||||
return parent.fields.any((Field field) =>
|
||||
isLateLoweredField(field) &&
|
||||
field.name.name.endsWith(node.name.name));
|
||||
field.name.text.endsWith(node.name.text));
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
|
|
@ -755,7 +755,7 @@ abstract class ClassBuilderImpl extends DeclarationBuilderImpl
|
|||
: procedure.isSetter
|
||||
? 'set:'
|
||||
: '';
|
||||
String invocationName = prefix + procedure.name.name;
|
||||
String invocationName = prefix + procedure.name.text;
|
||||
if (procedure.isSetter) invocationName += '=';
|
||||
Expression invocation = target.backendTarget.instantiateInvocation(
|
||||
target.loader.coreTypes,
|
||||
|
|
|
@ -119,7 +119,7 @@ abstract class ExtensionBuilderImpl extends DeclarationBuilderImpl
|
|||
Builder lookupLocalMemberByName(Name name,
|
||||
{bool setter: false, bool required: false}) {
|
||||
Builder builder =
|
||||
lookupLocalMember(name.name, setter: setter, required: required);
|
||||
lookupLocalMember(name.text, setter: setter, required: required);
|
||||
if (builder != null && name.isPrivate && library.library != name.library) {
|
||||
builder = null;
|
||||
}
|
||||
|
|
|
@ -73,7 +73,7 @@ class DillClassBuilder extends ClassBuilderImpl {
|
|||
|
||||
void addMember(Member member) {
|
||||
DillMemberBuilder builder = new DillMemberBuilder(member, this);
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
if (builder.isConstructor || builder.isFactory) {
|
||||
constructorScopeBuilder.addMember(name, builder);
|
||||
} else if (builder.isSetter) {
|
||||
|
|
|
@ -52,12 +52,12 @@ class DillExtensionBuilder extends ExtensionBuilderImpl {
|
|||
case ExtensionMemberKind.Operator:
|
||||
case ExtensionMemberKind.Field:
|
||||
Member member = descriptor.member.asMember;
|
||||
scopeBuilder.addMember(name.name,
|
||||
scopeBuilder.addMember(name.text,
|
||||
new DillExtensionMemberBuilder(member, descriptor, this));
|
||||
break;
|
||||
case ExtensionMemberKind.Setter:
|
||||
Member member = descriptor.member.asMember;
|
||||
scopeBuilder.addSetter(name.name,
|
||||
scopeBuilder.addSetter(name.text,
|
||||
new DillExtensionMemberBuilder(member, descriptor, this));
|
||||
break;
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ class DillExtensionBuilder extends ExtensionBuilderImpl {
|
|||
_methods.forEach((Name name, ExtensionMemberDescriptor descriptor) {
|
||||
Member member = descriptor.member.asMember;
|
||||
scopeBuilder.addMember(
|
||||
name.name,
|
||||
name.text,
|
||||
new DillExtensionMemberBuilder(
|
||||
member, descriptor, this, _tearOffs[name]));
|
||||
});
|
||||
|
|
|
@ -187,7 +187,7 @@ class DillLibraryBuilder extends LibraryBuilderImpl {
|
|||
}
|
||||
|
||||
void addMember(Member member) {
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
if (name == "_exports#") {
|
||||
Field field = member;
|
||||
String stringValue;
|
||||
|
@ -327,11 +327,11 @@ class DillLibraryBuilder extends LibraryBuilderImpl {
|
|||
name = node.name;
|
||||
} else if (node is Procedure) {
|
||||
libraryUri = node.enclosingLibrary.importUri;
|
||||
name = node.name.name;
|
||||
name = node.name.text;
|
||||
isSetter = node.isSetter;
|
||||
} else if (node is Member) {
|
||||
libraryUri = node.enclosingLibrary.importUri;
|
||||
name = node.name.name;
|
||||
name = node.name.text;
|
||||
} else if (node is Typedef) {
|
||||
libraryUri = node.enclosingLibrary.importUri;
|
||||
name = node.name;
|
||||
|
|
|
@ -33,7 +33,7 @@ class DillMemberBuilder extends MemberBuilderImpl {
|
|||
|
||||
String get debugName => "DillMemberBuilder";
|
||||
|
||||
String get name => member.name.name;
|
||||
String get name => member.name.text;
|
||||
|
||||
bool get isConstructor => member is Constructor;
|
||||
|
||||
|
|
|
@ -1181,7 +1181,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
Member resolvedTarget = redirectionTarget?.target;
|
||||
|
||||
if (resolvedTarget == null) {
|
||||
String name = constructorNameForDiagnostics(initialTarget.name.name,
|
||||
String name = constructorNameForDiagnostics(initialTarget.name.text,
|
||||
className: initialTarget.enclosingClass.name);
|
||||
// TODO(dmitryas): Report this error earlier.
|
||||
replacementNode = buildProblem(
|
||||
|
@ -1470,7 +1470,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
builder.charOffset, const <TypeParameter>[]) !=
|
||||
null) {
|
||||
String superclass = classBuilder.supertypeBuilder.fullNameForErrors;
|
||||
int length = constructor.name.name.length;
|
||||
int length = constructor.name.text.length;
|
||||
if (length == 0) {
|
||||
length = (constructor.parent as Class).name.length;
|
||||
}
|
||||
|
@ -1847,7 +1847,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
.withArguments(candidate.enclosingClass.name);
|
||||
} else {
|
||||
if (candidate is Constructor) {
|
||||
if (candidate.name.name == '') {
|
||||
if (candidate.name.text == '') {
|
||||
length = candidate.enclosingClass.name.length;
|
||||
} else {
|
||||
// Assume no spaces around the dot. Not perfect, but probably the
|
||||
|
@ -1887,10 +1887,10 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
bool reportWarning: true,
|
||||
List<LocatedMessage> context}) {
|
||||
Message message = isSuper
|
||||
? fasta.templateSuperclassHasNoGetter.withArguments(name.name)
|
||||
: fasta.templateGetterNotFound.withArguments(name.name);
|
||||
? fasta.templateSuperclassHasNoGetter.withArguments(name.text)
|
||||
: fasta.templateGetterNotFound.withArguments(name.text);
|
||||
if (reportWarning) {
|
||||
addProblemErrorIfConst(message, charOffset, name.name.length,
|
||||
addProblemErrorIfConst(message, charOffset, name.text.length,
|
||||
context: context);
|
||||
}
|
||||
return message;
|
||||
|
@ -1902,10 +1902,10 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
bool reportWarning: true,
|
||||
List<LocatedMessage> context}) {
|
||||
Message message = isSuper
|
||||
? fasta.templateSuperclassHasNoSetter.withArguments(name.name)
|
||||
: fasta.templateSetterNotFound.withArguments(name.name);
|
||||
? fasta.templateSuperclassHasNoSetter.withArguments(name.text)
|
||||
: fasta.templateSetterNotFound.withArguments(name.text);
|
||||
if (reportWarning) {
|
||||
addProblemErrorIfConst(message, charOffset, name.name.length,
|
||||
addProblemErrorIfConst(message, charOffset, name.text.length,
|
||||
context: context);
|
||||
}
|
||||
return message;
|
||||
|
@ -1916,7 +1916,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
{bool isSuper: false,
|
||||
bool reportWarning: true,
|
||||
List<LocatedMessage> context}) {
|
||||
String plainName = name.name;
|
||||
String plainName = name.text;
|
||||
int dotIndex = plainName.lastIndexOf(".");
|
||||
if (dotIndex != -1) {
|
||||
plainName = plainName.substring(dotIndex + 1);
|
||||
|
@ -1928,8 +1928,8 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
length = 1;
|
||||
}
|
||||
Message message = isSuper
|
||||
? fasta.templateSuperclassHasNoMethod.withArguments(name.name)
|
||||
: fasta.templateMethodNotFound.withArguments(name.name);
|
||||
? fasta.templateSuperclassHasNoMethod.withArguments(name.text)
|
||||
: fasta.templateMethodNotFound.withArguments(name.text);
|
||||
if (reportWarning) {
|
||||
addProblemErrorIfConst(message, charOffset, length, context: context);
|
||||
}
|
||||
|
@ -3989,7 +3989,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
target.function, arguments, charOffset, typeParameters);
|
||||
if (argMessage != null) {
|
||||
return throwNoSuchMethodError(forest.createNullLiteral(charOffset),
|
||||
target.name.name, arguments, charOffset,
|
||||
target.name.text, arguments, charOffset,
|
||||
candidate: target, message: argMessage);
|
||||
}
|
||||
|
||||
|
@ -4064,7 +4064,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
target.function, arguments, fileOffset, typeParameters);
|
||||
if (argMessage != null) {
|
||||
return throwNoSuchMethodError(forest.createNullLiteral(fileOffset),
|
||||
target.name.name, arguments, fileOffset,
|
||||
target.name.text, arguments, fileOffset,
|
||||
candidate: target, message: argMessage);
|
||||
}
|
||||
|
||||
|
@ -5980,7 +5980,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
[int charOffset = -1]) {
|
||||
if (member.isConst && !constructor.isConst) {
|
||||
addProblem(fasta.messageConstConstructorWithNonConstSuper, charOffset,
|
||||
constructor.name.name.length);
|
||||
constructor.name.text.length);
|
||||
}
|
||||
needsImplicitSuperInitializer = false;
|
||||
return new SuperInitializer(constructor, arguments)
|
||||
|
@ -5993,8 +5993,8 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
Constructor constructor, Arguments arguments,
|
||||
[int charOffset = -1]) {
|
||||
if (classBuilder.checkConstructorCyclic(
|
||||
member.name, constructor.name.name)) {
|
||||
int length = constructor.name.name.length;
|
||||
member.name, constructor.name.text)) {
|
||||
int length = constructor.name.text.length;
|
||||
if (length == 0) length = "this".length;
|
||||
addProblem(fasta.messageConstructorCyclic, charOffset, length);
|
||||
// TODO(askesc): Produce invalid initializer.
|
||||
|
@ -6147,7 +6147,7 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
fasta.templateNotConstantExpression
|
||||
.withArguments('Method invocation'),
|
||||
offset,
|
||||
name.name.length);
|
||||
name.text.length);
|
||||
}
|
||||
if (isSuper) {
|
||||
// We can ignore [isNullAware] on super sends.
|
||||
|
@ -6161,9 +6161,9 @@ class BodyBuilder extends ScopeListener<JumpTarget>
|
|||
target = null;
|
||||
addProblemErrorIfConst(
|
||||
fasta.templateSuperclassMethodArgumentMismatch
|
||||
.withArguments(name.name),
|
||||
.withArguments(name.text),
|
||||
offset,
|
||||
name.name.length);
|
||||
name.text.length);
|
||||
}
|
||||
return new SuperMethodInvocation(name, arguments, target)
|
||||
..fileOffset = offset;
|
||||
|
|
|
@ -581,9 +581,9 @@ class ClassHierarchyBuilder implements ClassHierarchyBase {
|
|||
if (declaration?.isStatic ?? true) return null;
|
||||
if (declaration.isDuplicate) {
|
||||
library?.addProblem(
|
||||
templateDuplicatedDeclarationUse.withArguments(name.name),
|
||||
templateDuplicatedDeclarationUse.withArguments(name.text),
|
||||
charOffset,
|
||||
name.name.length,
|
||||
name.text.length,
|
||||
library.fileUri);
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -1585,7 +1585,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
unevaluatedArguments(arguments, {}, node.arguments.types)));
|
||||
}
|
||||
|
||||
final String op = node.name.name;
|
||||
final String op = node.name.text;
|
||||
|
||||
// Handle == and != first (it's common between all types). Since `a != b` is
|
||||
// parsed as `!(a == b)` it is handled implicitly through ==.
|
||||
|
@ -1835,7 +1835,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
}
|
||||
|
||||
final Constant receiver = _evaluateSubexpression(node.receiver);
|
||||
if (receiver is StringConstant && node.name.name == 'length') {
|
||||
if (receiver is StringConstant && node.name.text == 'length') {
|
||||
return canonicalize(intFolder.makeIntConstant(receiver.value.length));
|
||||
} else if (shouldBeUnevaluated) {
|
||||
return unevaluated(node,
|
||||
|
@ -1846,7 +1846,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
return report(
|
||||
node,
|
||||
templateConstEvalInvalidPropertyGet.withArguments(
|
||||
node.name.name, receiver, isNonNullableByDefault));
|
||||
node.name.text, receiver, isNonNullableByDefault));
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -1910,7 +1910,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
return report(
|
||||
node,
|
||||
templateConstEvalInvalidStaticInvocation
|
||||
.withArguments(target.name.name));
|
||||
.withArguments(target.name.text));
|
||||
} else if (target is Procedure) {
|
||||
if (target.kind == ProcedureKind.Method) {
|
||||
return canonicalize(new TearOffConstant(target));
|
||||
|
@ -1918,7 +1918,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
return report(
|
||||
node,
|
||||
templateConstEvalInvalidStaticInvocation
|
||||
.withArguments(target.name.name));
|
||||
.withArguments(target.name.text));
|
||||
} else {
|
||||
reportInvalid(
|
||||
node, 'No support for ${target.runtimeType} in a static-get.');
|
||||
|
@ -2064,13 +2064,13 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
if (target.isConst &&
|
||||
target.enclosingLibrary == coreTypes.coreLibrary &&
|
||||
positionals.length == 1 &&
|
||||
(target.name.name == "fromEnvironment" ||
|
||||
target.name.name == "hasEnvironment")) {
|
||||
(target.name.text == "fromEnvironment" ||
|
||||
target.name.text == "hasEnvironment")) {
|
||||
if (environmentDefines != null) {
|
||||
// Evaluate environment constant.
|
||||
Constant name = positionals.single;
|
||||
if (name is StringConstant) {
|
||||
if (target.name.name == "fromEnvironment") {
|
||||
if (target.name.text == "fromEnvironment") {
|
||||
return _handleFromEnvironment(target, name, named);
|
||||
} else {
|
||||
return _handleHasEnvironment(name);
|
||||
|
@ -2087,7 +2087,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
isConst: true));
|
||||
}
|
||||
}
|
||||
} else if (target.name.name == 'identical') {
|
||||
} else if (target.name.text == 'identical') {
|
||||
// Ensure the "identical()" function comes from dart:core.
|
||||
final TreeNode parent = target.parent;
|
||||
if (parent is Library && parent == coreTypes.coreLibrary) {
|
||||
|
@ -2123,7 +2123,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
return report(node, messageConstEvalExtension);
|
||||
}
|
||||
|
||||
String name = target.name.name;
|
||||
String name = target.name.text;
|
||||
if (target is Procedure && target.isFactory) {
|
||||
if (name.isEmpty) {
|
||||
name = target.enclosingClass.name;
|
||||
|
@ -2325,7 +2325,7 @@ class ConstantEvaluator extends RecursiveVisitor<Constant> {
|
|||
if (cached != null) return cached;
|
||||
for (Procedure procedure in klass.procedures) {
|
||||
if (procedure.kind == ProcedureKind.Operator &&
|
||||
procedure.name.name == '==' &&
|
||||
procedure.name.text == '==' &&
|
||||
!procedure.isAbstract &&
|
||||
!procedure.isForwardingStub) {
|
||||
return primitiveEqualCache[klass] = false;
|
||||
|
|
|
@ -471,7 +471,7 @@ class PropertyAccessGenerator extends Generator {
|
|||
String get _debugName => "PropertyAccessGenerator";
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
@override
|
||||
Expression doInvocation(
|
||||
|
@ -486,7 +486,7 @@ class PropertyAccessGenerator extends Generator {
|
|||
sink.write(", receiver: ");
|
||||
printNodeOn(receiver, sink, syntheticNames: syntheticNames);
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -624,7 +624,7 @@ class ThisPropertyAccessGenerator extends Generator {
|
|||
String get _debugName => "ThisPropertyAccessGenerator";
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
@override
|
||||
Expression buildSimpleRead() {
|
||||
|
@ -715,7 +715,7 @@ class ThisPropertyAccessGenerator extends Generator {
|
|||
@override
|
||||
void printOn(StringSink sink) {
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -738,7 +738,7 @@ class NullAwarePropertyAccessGenerator extends Generator {
|
|||
Expression receiverAccess() => new VariableGet(receiver);
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
@override
|
||||
Expression buildSimpleRead() {
|
||||
|
@ -823,7 +823,7 @@ class NullAwarePropertyAccessGenerator extends Generator {
|
|||
sink.write(", receiverExpression: ");
|
||||
printNodeOn(receiverExpression, sink, syntheticNames: syntheticNames);
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -842,7 +842,7 @@ class SuperPropertyAccessGenerator extends Generator {
|
|||
String get _debugName => "SuperPropertyAccessGenerator";
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
@override
|
||||
Expression buildSimpleRead() {
|
||||
|
@ -936,7 +936,7 @@ class SuperPropertyAccessGenerator extends Generator {
|
|||
void printOn(StringSink sink) {
|
||||
NameSystem syntheticNames = new NameSystem();
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
sink.write(", getter: ");
|
||||
printQualifiedNameOn(getter, sink, syntheticNames: syntheticNames);
|
||||
sink.write(", setter: ");
|
||||
|
@ -1458,11 +1458,11 @@ class StaticAccessGenerator extends Generator {
|
|||
return _helper.buildProblem(
|
||||
templateNotConstantExpression.withArguments('Method invocation'),
|
||||
offset,
|
||||
readTarget?.name?.name?.length ?? 0);
|
||||
readTarget?.name?.text?.length ?? 0);
|
||||
}
|
||||
if (readTarget == null || isFieldOrGetter(readTarget)) {
|
||||
return _helper.forest.createExpressionInvocation(
|
||||
offset + (readTarget?.name?.name?.length ?? 0),
|
||||
offset + (readTarget?.name?.text?.length ?? 0),
|
||||
buildSimpleRead(),
|
||||
arguments);
|
||||
} else {
|
||||
|
@ -1935,7 +1935,7 @@ class ExplicitExtensionInstanceAccessGenerator extends Generator {
|
|||
String get _debugName => "ExplicitExtensionIndexedAccessGenerator";
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => targetName.name;
|
||||
String get _plainNameForRead => targetName.text;
|
||||
|
||||
List<DartType> _createExtensionTypeArguments() {
|
||||
return explicitTypeArguments ?? const <DartType>[];
|
||||
|
@ -3079,7 +3079,7 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator {
|
|||
if (declarationBuilder is DeclarationBuilder) {
|
||||
DeclarationBuilder declaration = declarationBuilder;
|
||||
Builder member = declaration.findStaticBuilder(
|
||||
name.name, offsetForToken(send.token), _uri, _helper.libraryBuilder);
|
||||
name.text, offsetForToken(send.token), _uri, _helper.libraryBuilder);
|
||||
|
||||
Generator generator;
|
||||
if (member == null) {
|
||||
|
@ -3092,7 +3092,7 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator {
|
|||
send.token,
|
||||
send.token,
|
||||
arguments,
|
||||
name.name,
|
||||
name.text,
|
||||
send.typeArguments,
|
||||
token.charOffset,
|
||||
Constness.implicit,
|
||||
|
@ -3100,7 +3100,7 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator {
|
|||
}
|
||||
} else if (member is AmbiguousBuilder) {
|
||||
return _helper.buildProblem(
|
||||
member.message, member.charOffset, name.name.length);
|
||||
member.message, member.charOffset, name.text.length);
|
||||
} else {
|
||||
Builder setter;
|
||||
if (member.isSetter) {
|
||||
|
@ -3108,13 +3108,13 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator {
|
|||
member = null;
|
||||
} else if (member.isGetter) {
|
||||
setter = declaration.findStaticBuilder(
|
||||
name.name, fileOffset, _uri, _helper.libraryBuilder,
|
||||
name.text, fileOffset, _uri, _helper.libraryBuilder,
|
||||
isSetter: true);
|
||||
} else if (member.isField) {
|
||||
MemberBuilder fieldBuilder = member;
|
||||
if (!fieldBuilder.isAssignable) {
|
||||
setter = declaration.findStaticBuilder(
|
||||
name.name, fileOffset, _uri, _helper.libraryBuilder,
|
||||
name.text, fileOffset, _uri, _helper.libraryBuilder,
|
||||
isSetter: true);
|
||||
} else {
|
||||
setter = member;
|
||||
|
@ -3122,7 +3122,7 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator {
|
|||
}
|
||||
generator = new StaticAccessGenerator.fromBuilder(
|
||||
_helper,
|
||||
name.name,
|
||||
name.text,
|
||||
send.token,
|
||||
member is MemberBuilder ? member : null,
|
||||
setter is MemberBuilder ? setter : null);
|
||||
|
@ -3338,7 +3338,7 @@ abstract class ErroneousExpressionGenerator extends Generator {
|
|||
Name get name => unsupported("name", fileOffset, _uri);
|
||||
|
||||
@override
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
withReceiver(Object receiver, int operatorOffset, {bool isNullAware}) => this;
|
||||
|
||||
|
@ -3454,7 +3454,7 @@ class UnresolvedNameGenerator extends ErroneousExpressionGenerator {
|
|||
|
||||
factory UnresolvedNameGenerator(
|
||||
ExpressionGeneratorHelper helper, Token token, Name name) {
|
||||
if (name.name.isEmpty) {
|
||||
if (name.text.isEmpty) {
|
||||
unhandled("empty", "name", offsetForToken(token), helper.uri);
|
||||
}
|
||||
return new UnresolvedNameGenerator.internal(helper, token, name);
|
||||
|
@ -3511,7 +3511,7 @@ class UnresolvedNameGenerator extends ErroneousExpressionGenerator {
|
|||
@override
|
||||
void printOn(StringSink sink) {
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
}
|
||||
|
||||
Expression _buildUnresolvedVariableAssignment(
|
||||
|
@ -3719,7 +3719,7 @@ class DelayedPostfixIncrement extends ContextAwareGenerator {
|
|||
@override
|
||||
void printOn(StringSink sink) {
|
||||
sink.write(", binaryOperator: ");
|
||||
sink.write(binaryOperator.name);
|
||||
sink.write(binaryOperator.text);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3801,8 +3801,8 @@ class PrefixUseGenerator extends Generator {
|
|||
/* Expression | Generator */ buildPropertyAccess(
|
||||
IncompleteSendGenerator send, int operatorOffset, bool isNullAware) {
|
||||
if (send is IncompleteSendGenerator) {
|
||||
assert(send.name.name == send.token.lexeme,
|
||||
"'${send.name.name}' != ${send.token.lexeme}");
|
||||
assert(send.name.text == send.token.lexeme,
|
||||
"'${send.name.text}' != ${send.token.lexeme}");
|
||||
Object result = qualifiedLookup(send.token);
|
||||
if (send is SendAccessGenerator) {
|
||||
result = _helper.finishSend(
|
||||
|
@ -4265,7 +4265,7 @@ class ThisAccessGenerator extends Generator {
|
|||
constructor.function, arguments, offset, <TypeParameter>[]);
|
||||
} else {
|
||||
String fullName =
|
||||
_helper.constructorNameForDiagnostics(name.name, isSuper: isSuper);
|
||||
_helper.constructorNameForDiagnostics(name.text, isSuper: isSuper);
|
||||
message = (isSuper
|
||||
? templateSuperclassHasNoConstructor
|
||||
: templateConstructorNotFound)
|
||||
|
@ -4276,7 +4276,7 @@ class ThisAccessGenerator extends Generator {
|
|||
return _helper.buildInvalidInitializer(
|
||||
_helper.throwNoSuchMethodError(
|
||||
_forest.createNullLiteral(offset),
|
||||
_helper.constructorNameForDiagnostics(name.name,
|
||||
_helper.constructorNameForDiagnostics(name.text,
|
||||
isSuper: isSuper),
|
||||
arguments,
|
||||
offset,
|
||||
|
@ -4434,7 +4434,7 @@ class SendAccessGenerator extends Generator with IncompleteSendGenerator {
|
|||
assert(arguments != null);
|
||||
}
|
||||
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
String get _debugName => "SendAccessGenerator";
|
||||
|
||||
|
@ -4494,7 +4494,7 @@ class SendAccessGenerator extends Generator with IncompleteSendGenerator {
|
|||
@override
|
||||
void printOn(StringSink sink) {
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
sink.write(", arguments: ");
|
||||
Arguments node = arguments;
|
||||
if (node is Node) {
|
||||
|
@ -4513,7 +4513,7 @@ class IncompletePropertyAccessGenerator extends Generator
|
|||
ExpressionGeneratorHelper helper, Token token, this.name)
|
||||
: super(helper, token);
|
||||
|
||||
String get _plainNameForRead => name.name;
|
||||
String get _plainNameForRead => name.text;
|
||||
|
||||
String get _debugName => "IncompletePropertyAccessGenerator";
|
||||
|
||||
|
@ -4572,7 +4572,7 @@ class IncompletePropertyAccessGenerator extends Generator
|
|||
@override
|
||||
void printOn(StringSink sink) {
|
||||
sink.write(", name: ");
|
||||
sink.write(name.name);
|
||||
sink.write(name.text);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -564,10 +564,10 @@ class ForwardingNode {
|
|||
if (classBuilder.referencesFromIndexed != null) {
|
||||
if (kind == ProcedureKind.Setter) {
|
||||
referenceFrom =
|
||||
classBuilder.referencesFromIndexed.lookupProcedureSetter(name.name);
|
||||
classBuilder.referencesFromIndexed.lookupProcedureSetter(name.text);
|
||||
} else {
|
||||
referenceFrom = classBuilder.referencesFromIndexed
|
||||
.lookupProcedureNotSetter(name.name);
|
||||
.lookupProcedureNotSetter(name.text);
|
||||
}
|
||||
}
|
||||
return new Procedure(name, kind, function,
|
||||
|
|
|
@ -3725,9 +3725,9 @@ class InferenceVisitor
|
|||
inferrer.helper.wrapInProblem(
|
||||
binary,
|
||||
templateNullableOperatorCallError.withArguments(
|
||||
binaryName.name, leftType, inferrer.isNonNullableByDefault),
|
||||
binaryName.text, leftType, inferrer.isNonNullableByDefault),
|
||||
binary.fileOffset,
|
||||
binaryName.name.length));
|
||||
binaryName.text.length));
|
||||
}
|
||||
return new ExpressionInferenceResult(binaryType, binary);
|
||||
}
|
||||
|
@ -3823,10 +3823,10 @@ class InferenceVisitor
|
|||
unaryType,
|
||||
inferrer.helper.wrapInProblem(
|
||||
unary,
|
||||
templateNullableOperatorCallError.withArguments(unaryName.name,
|
||||
templateNullableOperatorCallError.withArguments(unaryName.text,
|
||||
expressionType, inferrer.isNonNullableByDefault),
|
||||
unary.fileOffset,
|
||||
unaryName == unaryMinusName ? 1 : unaryName.name.length));
|
||||
unaryName == unaryMinusName ? 1 : unaryName.text.length));
|
||||
}
|
||||
return new ExpressionInferenceResult(unaryType, unary);
|
||||
}
|
||||
|
@ -3909,7 +3909,7 @@ class InferenceVisitor
|
|||
readType,
|
||||
inferrer.helper.wrapInProblem(
|
||||
read,
|
||||
templateNullableOperatorCallError.withArguments(indexGetName.name,
|
||||
templateNullableOperatorCallError.withArguments(indexGetName.text,
|
||||
receiverType, inferrer.isNonNullableByDefault),
|
||||
read.fileOffset,
|
||||
noLength));
|
||||
|
@ -3973,7 +3973,7 @@ class InferenceVisitor
|
|||
return inferrer.helper.wrapInProblem(
|
||||
write,
|
||||
templateNullableOperatorCallError.withArguments(
|
||||
indexSetName.name, receiverType, inferrer.isNonNullableByDefault),
|
||||
indexSetName.text, receiverType, inferrer.isNonNullableByDefault),
|
||||
write.fileOffset,
|
||||
noLength);
|
||||
}
|
||||
|
@ -4107,9 +4107,9 @@ class InferenceVisitor
|
|||
readResult = inferrer.wrapExpressionInferenceResultInProblem(
|
||||
readResult,
|
||||
templateNullablePropertyAccessError.withArguments(
|
||||
propertyName.name, receiverType, inferrer.isNonNullableByDefault),
|
||||
propertyName.text, receiverType, inferrer.isNonNullableByDefault),
|
||||
read.fileOffset,
|
||||
propertyName.name.length);
|
||||
propertyName.text.length);
|
||||
}
|
||||
return readResult;
|
||||
}
|
||||
|
@ -4191,9 +4191,9 @@ class InferenceVisitor
|
|||
return inferrer.helper.wrapInProblem(
|
||||
write,
|
||||
templateNullablePropertyAccessError.withArguments(
|
||||
propertyName.name, receiverType, inferrer.isNonNullableByDefault),
|
||||
propertyName.text, receiverType, inferrer.isNonNullableByDefault),
|
||||
write.fileOffset,
|
||||
propertyName.name.length);
|
||||
propertyName.text.length);
|
||||
}
|
||||
|
||||
return write;
|
||||
|
|
|
@ -698,9 +698,9 @@ class FactoryConstructorInvocationJudgment extends StaticInvocation
|
|||
}
|
||||
printer.writeClassName(target.enclosingClass.reference);
|
||||
printer.writeTypeArguments(arguments.types);
|
||||
if (target.name.name.isNotEmpty) {
|
||||
if (target.name.text.isNotEmpty) {
|
||||
printer.write('.');
|
||||
printer.write(target.name.name);
|
||||
printer.write(target.name.text);
|
||||
}
|
||||
printer.writeArguments(arguments, includeTypeArguments: false);
|
||||
}
|
||||
|
@ -3557,12 +3557,12 @@ class BinaryExpression extends InternalExpression {
|
|||
}
|
||||
|
||||
@override
|
||||
int get precedence => Precedence.binaryPrecedence[binaryName.name];
|
||||
int get precedence => Precedence.binaryPrecedence[binaryName.text];
|
||||
|
||||
@override
|
||||
void toTextInternal(AstPrinter printer) {
|
||||
printer.writeExpression(left, minimumPrecedence: precedence);
|
||||
printer.write(' ${binaryName.name} ');
|
||||
printer.write(' ${binaryName.text} ');
|
||||
printer.writeExpression(right, minimumPrecedence: precedence);
|
||||
}
|
||||
}
|
||||
|
@ -3611,7 +3611,7 @@ class UnaryExpression extends InternalExpression {
|
|||
if (unaryName == unaryMinusName) {
|
||||
printer.write('-');
|
||||
} else {
|
||||
printer.write('${unaryName.name}');
|
||||
printer.write('${unaryName.text}');
|
||||
}
|
||||
printer.writeExpression(expression, minimumPrecedence: precedence);
|
||||
}
|
||||
|
|
|
@ -47,6 +47,6 @@ void printQualifiedNameOn(Member member, StringSink sink,
|
|||
sink.write(cls.name ?? syntheticNames.nameClass(cls));
|
||||
sink.write("::");
|
||||
}
|
||||
sink.write(member.name?.name ?? syntheticNames.nameMember(member));
|
||||
sink.write(member.name?.text ?? syntheticNames.nameMember(member));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -609,7 +609,7 @@ class KernelTarget extends TargetImplementation {
|
|||
builder.getSubstitutionMap(supertype.cls);
|
||||
for (Constructor constructor in supertype.cls.constructors) {
|
||||
Constructor referenceFrom =
|
||||
indexedClass?.lookupConstructor(constructor.name.name);
|
||||
indexedClass?.lookupConstructor(constructor.name.text);
|
||||
|
||||
builder.addSyntheticConstructor(makeMixinApplicationConstructor(
|
||||
builder.cls,
|
||||
|
@ -849,7 +849,7 @@ class KernelTarget extends TargetImplementation {
|
|||
}
|
||||
});
|
||||
Set<String> kernelConstructorNames =
|
||||
cls.constructors.map((c) => c.name.name).toSet().difference({""});
|
||||
cls.constructors.map((c) => c.name.text).toSet().difference({""});
|
||||
return kernelConstructorNames.containsAll(patchConstructorNames);
|
||||
}(),
|
||||
"Constructors of class '${builder.fullNameForErrors}' "
|
||||
|
@ -860,7 +860,7 @@ class KernelTarget extends TargetImplementation {
|
|||
if (initializer is RedirectingInitializer) {
|
||||
if (constructor.isConst && !initializer.target.isConst) {
|
||||
builder.addProblem(messageConstConstructorRedirectionToNonConst,
|
||||
initializer.fileOffset, initializer.target.name.name.length);
|
||||
initializer.fileOffset, initializer.target.name.text.length);
|
||||
}
|
||||
isRedirecting = true;
|
||||
break;
|
||||
|
@ -1072,7 +1072,7 @@ class KernelTarget extends TargetImplementation {
|
|||
patchFieldNames.remove(name);
|
||||
}
|
||||
});
|
||||
Set<String> kernelFieldNames = cls.fields.map((f) => f.name.name).toSet();
|
||||
Set<String> kernelFieldNames = cls.fields.map((f) => f.name.text).toSet();
|
||||
return kernelFieldNames.containsAll(patchFieldNames);
|
||||
}(),
|
||||
"Fields of class '${builder.fullNameForErrors}' "
|
||||
|
@ -1239,7 +1239,7 @@ Constructor defaultSuperConstructor(Class cls) {
|
|||
Class superclass = cls.superclass;
|
||||
if (superclass != null) {
|
||||
for (Constructor constructor in superclass.constructors) {
|
||||
if (constructor.name.name.isEmpty) {
|
||||
if (constructor.name.text.isEmpty) {
|
||||
return constructor.function.requiredParameterCount == 0
|
||||
? constructor
|
||||
: null;
|
||||
|
|
|
@ -51,7 +51,7 @@ class LoadLibraryBuilder extends BuilderImpl {
|
|||
String prefix = expression.import.name;
|
||||
Name name = new Name('_#loadLibrary_$prefix', parent.library);
|
||||
Procedure referencesFrom =
|
||||
parent.lookupLibraryReferenceProcedure(name.name, false);
|
||||
parent.lookupLibraryReferenceProcedure(name.text, false);
|
||||
tearoff = new Procedure(
|
||||
name,
|
||||
ProcedureKind.Method,
|
||||
|
|
|
@ -35,7 +35,7 @@ const String redirectingName = "_redirecting#";
|
|||
bool isRedirectingFactoryField(Member member) {
|
||||
return member is Field &&
|
||||
member.isStatic &&
|
||||
member.name.name == redirectingName;
|
||||
member.name.text == redirectingName;
|
||||
}
|
||||
|
||||
/// Name used for a synthesized let variable used to encode redirecting factory
|
||||
|
|
|
@ -369,7 +369,7 @@ class TypeLabeler implements DartTypeVisitor<void>, ConstantVisitor<void> {
|
|||
classNode.enclosingLibrary.fileUri));
|
||||
result.add(".");
|
||||
}
|
||||
result.add(procedure.name.name);
|
||||
result.add(procedure.name.text);
|
||||
}
|
||||
|
||||
void visitPartialInstantiationConstant(PartialInstantiationConstant node) {
|
||||
|
|
|
@ -240,7 +240,7 @@ class FastaVerifyingVisitor extends VerifyingVisitor {
|
|||
@override
|
||||
void visitField(Field node) {
|
||||
enterTreeNode(node);
|
||||
fileUri = checkLocation(node, node.name.name, node.fileUri);
|
||||
fileUri = checkLocation(node, node.name.text, node.fileUri);
|
||||
super.visitField(node);
|
||||
exitTreeNode(node);
|
||||
}
|
||||
|
@ -248,7 +248,7 @@ class FastaVerifyingVisitor extends VerifyingVisitor {
|
|||
@override
|
||||
void visitProcedure(Procedure node) {
|
||||
enterTreeNode(node);
|
||||
fileUri = checkLocation(node, node.name.name, node.fileUri);
|
||||
fileUri = checkLocation(node, node.name.text, node.fileUri);
|
||||
super.visitProcedure(node);
|
||||
exitTreeNode(node);
|
||||
}
|
||||
|
|
|
@ -620,7 +620,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
}
|
||||
|
||||
void addSyntheticConstructor(Constructor constructor) {
|
||||
String name = constructor.name.name;
|
||||
String name = constructor.name.text;
|
||||
cls.constructors.add(constructor);
|
||||
constructor.parent = cls;
|
||||
DillMemberBuilder memberBuilder = new DillMemberBuilder(constructor, this);
|
||||
|
@ -718,10 +718,10 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
if (referencesFromIndexed != null) {
|
||||
if (procedure.isSetter) {
|
||||
referenceFrom =
|
||||
referencesFromIndexed.lookupProcedureSetter(procedure.name.name);
|
||||
referencesFromIndexed.lookupProcedureSetter(procedure.name.text);
|
||||
} else {
|
||||
referenceFrom =
|
||||
referencesFromIndexed.lookupProcedureNotSetter(procedure.name.name);
|
||||
referencesFromIndexed.lookupProcedureNotSetter(procedure.name.text);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -748,7 +748,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
Procedure referenceFrom;
|
||||
if (referencesFromIndexed != null) {
|
||||
referenceFrom =
|
||||
referencesFromIndexed.lookupProcedureNotSetter(field.name.name);
|
||||
referencesFromIndexed.lookupProcedureNotSetter(field.name.text);
|
||||
}
|
||||
Procedure getter = new Procedure(
|
||||
field.name,
|
||||
|
@ -777,7 +777,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
Procedure referenceFrom;
|
||||
if (referencesFromIndexed != null) {
|
||||
referenceFrom =
|
||||
referencesFromIndexed.lookupProcedureSetter(field.name.name);
|
||||
referencesFromIndexed.lookupProcedureSetter(field.name.text);
|
||||
}
|
||||
|
||||
Procedure setter = new Procedure(
|
||||
|
@ -1233,14 +1233,14 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredMember,
|
||||
templateOverrideTypeVariablesMismatch.withArguments(
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(_getMemberUri(interfaceMember),
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1281,16 +1281,16 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredBound,
|
||||
declaredParameter.name,
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
computedBound,
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}",
|
||||
"${interfaceMember.name.text}",
|
||||
library.isNonNullableByDefault),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(_getMemberUri(interfaceMember),
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1364,9 +1364,9 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
supertype, subtype, SubtypeCheckMode.ignoringNullabilities));
|
||||
if (isErrorInNnbdOptedOutMode || library.isNonNullableByDefault) {
|
||||
String declaredMemberName = '${declaredMember.enclosingClass.name}'
|
||||
'.${declaredMember.name.name}';
|
||||
'.${declaredMember.name.text}';
|
||||
String interfaceMemberName = '${interfaceMember.enclosingClass.name}'
|
||||
'.${interfaceMember.name.name}';
|
||||
'.${interfaceMember.name.text}';
|
||||
Message message;
|
||||
int fileOffset;
|
||||
if (declaredParameter == null) {
|
||||
|
@ -1401,7 +1401,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
isInterfaceCheck, declaredMember, message, fileOffset, noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(_getMemberUri(interfaceMember),
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1449,14 +1449,14 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredMember,
|
||||
templateOverrideFewerPositionalArguments.withArguments(
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(interfaceMember.fileUri,
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1468,14 +1468,14 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredMember,
|
||||
templateOverrideMoreRequiredArguments.withArguments(
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(interfaceMember.fileUri,
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1523,14 +1523,14 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredMember,
|
||||
templateOverrideFewerNamedArguments.withArguments(
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(interfaceMember.fileUri,
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1560,15 +1560,15 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
declaredMember,
|
||||
templateOverrideMismatchNamedParameter.withArguments(
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
interfaceNamedParameters.current.name,
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredMember.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(interfaceMember.fileUri,
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1597,14 +1597,14 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
templateOverrideMismatchRequiredNamedParameter.withArguments(
|
||||
declaredParameter.name,
|
||||
"${declaredMember.enclosingClass.name}."
|
||||
"${declaredMember.name.name}",
|
||||
"${declaredMember.name.text}",
|
||||
"${interfaceMember.enclosingClass.name}."
|
||||
"${interfaceMember.name.name}"),
|
||||
"${interfaceMember.name.text}"),
|
||||
declaredParameter.fileOffset,
|
||||
noLength,
|
||||
context: [
|
||||
templateOverriddenMethodCause
|
||||
.withArguments(interfaceMember.name.name)
|
||||
.withArguments(interfaceMember.name.text)
|
||||
.withLocation(_getMemberUri(interfaceMember),
|
||||
interfaceMember.fileOffset, noLength)
|
||||
]);
|
||||
|
@ -1691,7 +1691,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
// Interface check
|
||||
library.addProblem(
|
||||
templateInterfaceCheck.withArguments(
|
||||
declaredMember.name.name, cls.name),
|
||||
declaredMember.name.text, cls.name),
|
||||
cls.fileOffset,
|
||||
cls.name.length,
|
||||
cls.fileUri,
|
||||
|
@ -1704,7 +1704,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
int classNameLength = cls.nameAsMixinApplicationSubclass.length;
|
||||
library.addProblem(
|
||||
templateImplicitMixinOverride.withArguments(
|
||||
mixinName, baseName, declaredMember.name.name),
|
||||
mixinName, baseName, declaredMember.name.text),
|
||||
cls.fileOffset,
|
||||
classNameLength,
|
||||
cls.fileUri,
|
||||
|
@ -1713,7 +1713,7 @@ class SourceClassBuilder extends ClassBuilderImpl
|
|||
// Named mixin application class
|
||||
library.addProblem(
|
||||
templateNamedMixinOverride.withArguments(
|
||||
cls.name, declaredMember.name.name),
|
||||
cls.name, declaredMember.name.text),
|
||||
cls.fileOffset,
|
||||
cls.name.length,
|
||||
cls.fileUri,
|
||||
|
|
|
@ -2172,7 +2172,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
MetadataCollector metadataCollector = loader.target.metadataCollector;
|
||||
if (returnType == null) {
|
||||
if (kind == ProcedureKind.Operator &&
|
||||
identical(name, indexSetName.name)) {
|
||||
identical(name, indexSetName.text)) {
|
||||
returnType = addVoidType(charOffset);
|
||||
} else if (kind == ProcedureKind.Setter) {
|
||||
returnType = addVoidType(charOffset);
|
||||
|
@ -2736,7 +2736,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
VariableDeclaration originNamed = originNamedMap[forwarderNamed.name];
|
||||
if (originNamed == null) {
|
||||
return unhandled(
|
||||
"null", forwarder.name.name, origin.fileOffset, origin.fileUri);
|
||||
"null", forwarder.name.text, origin.fileOffset, origin.fileUri);
|
||||
}
|
||||
if (originNamed.initializer == null) continue;
|
||||
forwarderNamed.initializer = cloner.clone(originNamed.initializer);
|
||||
|
@ -3403,7 +3403,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
targetReceiver =
|
||||
new InterfaceType(klass, klass.enclosingLibrary.nonNullable);
|
||||
}
|
||||
String targetName = node.target.name.name;
|
||||
String targetName = node.target.name.text;
|
||||
reportTypeArgumentIssues(issues, fileUri, node.fileOffset,
|
||||
typeArgumentsInfo: typeArgumentsInfo,
|
||||
targetReceiver: targetReceiver,
|
||||
|
@ -3487,7 +3487,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
reportTypeArgumentIssues(issues, fileUri, offset,
|
||||
typeArgumentsInfo: getTypeArgumentsInfo(arguments),
|
||||
targetReceiver: receiverType,
|
||||
targetName: name.name);
|
||||
targetName: name.text);
|
||||
}
|
||||
|
||||
void checkTypesInOutline(TypeEnvironment typeEnvironment) {
|
||||
|
|
|
@ -292,10 +292,10 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
// corresponding field type which required us to know the type of the
|
||||
// constructor.
|
||||
String name = target.enclosingClass.name;
|
||||
if (target.name.name.isNotEmpty) {
|
||||
if (target.name.text.isNotEmpty) {
|
||||
// TODO(ahe): Use `inferrer.helper.constructorNameForDiagnostics`
|
||||
// instead. However, `inferrer.helper` may be null.
|
||||
name += ".${target.name.name}";
|
||||
name += ".${target.name.text}";
|
||||
}
|
||||
constructor.library.addProblem(
|
||||
templateCantInferTypeDueToCircularity.withArguments(name),
|
||||
|
@ -498,7 +498,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
if (contextType is! InvalidType) {
|
||||
errorNode = helper.wrapInProblem(
|
||||
errorNode,
|
||||
template.withArguments(callName.name),
|
||||
template.withArguments(callName.text),
|
||||
errorNode.fileOffset,
|
||||
noLength);
|
||||
}
|
||||
|
@ -942,13 +942,13 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
Template<Message Function(String, DartType, bool)> errorTemplate) {
|
||||
assert(receiverType != null && isKnown(receiverType));
|
||||
if (!isTopLevel && target.isMissing && errorTemplate != null) {
|
||||
int length = name.name.length;
|
||||
if (identical(name.name, callName.name) ||
|
||||
identical(name.name, unaryMinusName.name)) {
|
||||
int length = name.text.length;
|
||||
if (identical(name.text, callName.text) ||
|
||||
identical(name.text, unaryMinusName.text)) {
|
||||
length = 1;
|
||||
}
|
||||
return helper.buildProblem(
|
||||
errorTemplate.withArguments(name.name,
|
||||
errorTemplate.withArguments(name.text,
|
||||
resolveTypeParameter(receiverType), isNonNullableByDefault),
|
||||
fileOffset,
|
||||
length);
|
||||
|
@ -2411,9 +2411,9 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
replacement = helper.wrapInProblem(
|
||||
replacement,
|
||||
templateNullableMethodCallError.withArguments(
|
||||
name.name, receiverType, isNonNullableByDefault),
|
||||
name.text, receiverType, isNonNullableByDefault),
|
||||
fileOffset,
|
||||
name.name.length);
|
||||
name.text.length);
|
||||
}
|
||||
}
|
||||
return createNullAwareExpressionInferenceResult(
|
||||
|
@ -2454,9 +2454,9 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
replacement = helper.wrapInProblem(
|
||||
replacement,
|
||||
templateNullableMethodCallError.withArguments(
|
||||
callName.name, receiverType, isNonNullableByDefault),
|
||||
callName.text, receiverType, isNonNullableByDefault),
|
||||
fileOffset,
|
||||
callName.name.length);
|
||||
callName.text.length);
|
||||
}
|
||||
}
|
||||
// TODO(johnniwinther): Check that type arguments against the bounds.
|
||||
|
@ -2562,9 +2562,9 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
replacement = helper.wrapInProblem(
|
||||
replacement,
|
||||
templateNullableMethodCallError.withArguments(
|
||||
methodName.name, receiverType, isNonNullableByDefault),
|
||||
methodName.text, receiverType, isNonNullableByDefault),
|
||||
fileOffset,
|
||||
methodName.name.length);
|
||||
methodName.text.length);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3021,7 +3021,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
receiverType: receiverType,
|
||||
isImplicitExtensionMember: target.isExtensionMember);
|
||||
DartType inferredType = result.inferredType;
|
||||
if (methodName.name == '==') {
|
||||
if (methodName.text == '==') {
|
||||
inferredType = coreTypes.boolRawType(library.nonNullable);
|
||||
}
|
||||
_checkBoundsInMethodInvocation(
|
||||
|
@ -3320,7 +3320,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
null, engine.forest.createArguments(fileOffset, <Expression>[index]));
|
||||
} else {
|
||||
return helper.buildProblem(
|
||||
templateSuperclassHasNoMethod.withArguments(indexGetName.name),
|
||||
templateSuperclassHasNoMethod.withArguments(indexGetName.text),
|
||||
fileOffset,
|
||||
noLength);
|
||||
}
|
||||
|
@ -3337,7 +3337,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
.createArguments(fileOffset, <Expression>[index, value]));
|
||||
} else {
|
||||
return helper.buildProblem(
|
||||
templateSuperclassHasNoMethod.withArguments(indexSetName.name),
|
||||
templateSuperclassHasNoMethod.withArguments(indexSetName.text),
|
||||
fileOffset,
|
||||
noLength);
|
||||
}
|
||||
|
@ -3365,7 +3365,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
template = ambiguousTemplate;
|
||||
}
|
||||
return helper.buildProblem(
|
||||
template.withArguments(name.name, resolveTypeParameter(receiverType),
|
||||
template.withArguments(name.text, resolveTypeParameter(receiverType),
|
||||
isNonNullableByDefault),
|
||||
fileOffset,
|
||||
length,
|
||||
|
@ -3385,13 +3385,13 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
assert(extensionAccessCandidates == null);
|
||||
return helper.buildProblem(
|
||||
templateInvokeNonFunction
|
||||
.withArguments(implicitInvocationPropertyName.name),
|
||||
.withArguments(implicitInvocationPropertyName.text),
|
||||
fileOffset,
|
||||
implicitInvocationPropertyName.name.length);
|
||||
implicitInvocationPropertyName.text.length);
|
||||
} else {
|
||||
return _reportMissingOrAmbiguousMember(
|
||||
fileOffset,
|
||||
isExpressionInvocation ? noLength : name.name.length,
|
||||
isExpressionInvocation ? noLength : name.text.length,
|
||||
receiverType,
|
||||
name,
|
||||
extensionAccessCandidates,
|
||||
|
@ -3409,7 +3409,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
} else {
|
||||
return _reportMissingOrAmbiguousMember(
|
||||
fileOffset,
|
||||
propertyName.name.length,
|
||||
propertyName.text.length,
|
||||
receiverType,
|
||||
propertyName,
|
||||
extensionAccessCandidates,
|
||||
|
@ -3430,7 +3430,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
} else {
|
||||
return _reportMissingOrAmbiguousMember(
|
||||
fileOffset,
|
||||
propertyName.name.length,
|
||||
propertyName.text.length,
|
||||
receiverType,
|
||||
propertyName,
|
||||
extensionAccessCandidates,
|
||||
|
@ -3488,7 +3488,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
} else {
|
||||
return _reportMissingOrAmbiguousMember(
|
||||
fileOffset,
|
||||
binaryName.name.length,
|
||||
binaryName.text.length,
|
||||
leftType,
|
||||
binaryName,
|
||||
extensionAccessCandidates,
|
||||
|
@ -3506,7 +3506,7 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
} else {
|
||||
return _reportMissingOrAmbiguousMember(
|
||||
fileOffset,
|
||||
unaryName == unaryMinusName ? 1 : unaryName.name.length,
|
||||
unaryName == unaryMinusName ? 1 : unaryName.text.length,
|
||||
expressionType,
|
||||
unaryName,
|
||||
extensionAccessCandidates,
|
||||
|
|
|
@ -399,7 +399,7 @@ class TypeSchemaEnvironment extends HierarchyBasedTypeEnvironment
|
|||
// TODO(paulberry): this matches what is defined in the spec. It would be
|
||||
// nice if we could change kernel to match the spec and not have to
|
||||
// override.
|
||||
if (member.name.name == 'remainder') return false;
|
||||
if (member.name.text == 'remainder') return false;
|
||||
if (!(receiverType is InterfaceType &&
|
||||
identical(receiverType.classNode, coreTypes.intClass))) {
|
||||
return false;
|
||||
|
|
|
@ -11,7 +11,7 @@ Id computeMemberId(Member node) {
|
|||
if (node.enclosingClass != null) {
|
||||
className = node.enclosingClass.name;
|
||||
}
|
||||
String memberName = node.name.name;
|
||||
String memberName = node.name.text;
|
||||
if (node is Procedure && node.kind == ProcedureKind.Setter) {
|
||||
memberName += '=';
|
||||
}
|
||||
|
@ -203,14 +203,14 @@ abstract class DataExtractor<T> extends Visitor with DataRegistry<T> {
|
|||
// This is an invocation of a named local function.
|
||||
computeForNode(node, createInvokeId(node.receiver));
|
||||
node.arguments.accept(this);
|
||||
} else if (node.name.name == '==' &&
|
||||
} else if (node.name.text == '==' &&
|
||||
receiver is VariableGet &&
|
||||
receiver.variable.name == null) {
|
||||
// This is a desugared `?.`.
|
||||
} else if (node.name.name == '[]') {
|
||||
} else if (node.name.text == '[]') {
|
||||
computeForNode(node, computeDefaultNodeId(node));
|
||||
super.visitMethodInvocation(node);
|
||||
} else if (node.name.name == '[]=') {
|
||||
} else if (node.name.text == '[]=') {
|
||||
computeForNode(node, createUpdateId(node));
|
||||
super.visitMethodInvocation(node);
|
||||
} else {
|
||||
|
|
|
@ -20,8 +20,8 @@ import '../kernel_generator_impl.dart';
|
|||
|
||||
/// Returns a canonical simple name for [member].
|
||||
String getMemberName(Member member) {
|
||||
if (member is Procedure && member.isSetter) return '${member.name.name}=';
|
||||
return member.name.name;
|
||||
if (member is Procedure && member.isSetter) return '${member.name.text}=';
|
||||
return member.name.text;
|
||||
}
|
||||
|
||||
/// Returns the enclosing [Member] for [node].
|
||||
|
@ -174,7 +174,7 @@ MemberBuilder lookupMemberBuilder(
|
|||
{bool required: true}) {
|
||||
MemberBuilder memberBuilder;
|
||||
if (member.isExtensionMember) {
|
||||
String memberName = member.name.name;
|
||||
String memberName = member.name.text;
|
||||
String extensionName = memberName.substring(0, memberName.indexOf('|'));
|
||||
memberName = memberName.substring(extensionName.length + 1);
|
||||
bool isSetter = member is Procedure && member.isSetter;
|
||||
|
@ -191,16 +191,16 @@ MemberBuilder lookupMemberBuilder(
|
|||
isSetter: isSetter, required: required);
|
||||
} else if (member.enclosingClass != null) {
|
||||
memberBuilder = lookupClassMemberBuilder(
|
||||
compilerResult, member.enclosingClass, member, member.name.name,
|
||||
compilerResult, member.enclosingClass, member, member.name.text,
|
||||
required: required);
|
||||
} else {
|
||||
TypeParameterScopeBuilder libraryBuilder = lookupLibraryDeclarationBuilder(
|
||||
compilerResult, member.enclosingLibrary,
|
||||
required: required);
|
||||
if (member is Procedure && member.isSetter) {
|
||||
memberBuilder = libraryBuilder.setters[member.name.name];
|
||||
memberBuilder = libraryBuilder.setters[member.name.text];
|
||||
} else {
|
||||
memberBuilder = libraryBuilder.members[member.name.name];
|
||||
memberBuilder = libraryBuilder.members[member.name.text];
|
||||
}
|
||||
}
|
||||
if (memberBuilder == null && required) {
|
||||
|
@ -659,10 +659,10 @@ String extensionMethodDescriptorToText(ExtensionMemberDescriptor descriptor) {
|
|||
sb.write('tearoff ');
|
||||
break;
|
||||
}
|
||||
sb.write(descriptor.name.name);
|
||||
sb.write(descriptor.name.text);
|
||||
sb.write('=');
|
||||
Member member = descriptor.member.asMember;
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
if (member is Procedure && member.isSetter) {
|
||||
sb.write('$name=');
|
||||
} else {
|
||||
|
|
|
@ -51,7 +51,7 @@ main(List<String> args) async {
|
|||
.getInterfaceMembers(c)
|
||||
.where((Member m) =>
|
||||
!m.isAbstract &&
|
||||
m.name.name == "toString" &&
|
||||
m.name.text == "toString" &&
|
||||
m.enclosingLibrary.importUri.scheme != "dart")
|
||||
.toList();
|
||||
if (toStringList.length > 1) throw "What?";
|
||||
|
@ -153,7 +153,7 @@ main(List<String> args) async {
|
|||
.getInterfaceMembers(c)
|
||||
.where((Member m) =>
|
||||
!m.isAbstract &&
|
||||
m.name.name == "toString" &&
|
||||
m.name.text == "toString" &&
|
||||
m.enclosingLibrary.importUri.scheme != "dart")
|
||||
.toList();
|
||||
Member toString = toStringList.single;
|
||||
|
|
|
@ -111,29 +111,29 @@ main() async {
|
|||
Map<int, String> tagToName = {};
|
||||
for (Field f in compareMe.tagClass.fields) {
|
||||
// Class doesn't only contain tag stuff.
|
||||
if (f.name.name.endsWith("Mask")) continue;
|
||||
if (f.name.name.endsWith("HighBit")) continue;
|
||||
if (f.name.name.endsWith("Bias")) continue;
|
||||
if (f.name.name == "ComponentFile") continue;
|
||||
if (f.name.text.endsWith("Mask")) continue;
|
||||
if (f.name.text.endsWith("HighBit")) continue;
|
||||
if (f.name.text.endsWith("Bias")) continue;
|
||||
if (f.name.text == "ComponentFile") continue;
|
||||
ConstantExpression value = f.initializer;
|
||||
IntConstant intConstant = value.constant;
|
||||
int intValue = intConstant.value;
|
||||
if (f.name.name == "BinaryFormatVersion") {
|
||||
if (f.name.text == "BinaryFormatVersion") {
|
||||
tagVersion = intValue;
|
||||
continue;
|
||||
}
|
||||
|
||||
int end = intValue + 1;
|
||||
// There are a few special cases that takes up a total of 8 tags.
|
||||
if (uses8Tags(f.name.name)) {
|
||||
if (uses8Tags(f.name.text)) {
|
||||
end = intValue + 8;
|
||||
}
|
||||
for (; intValue < end; intValue++) {
|
||||
if (tagToName[intValue] != null) {
|
||||
throw "Double entry for ${intValue}: "
|
||||
"${f.name.name} and ${tagToName[intValue]}";
|
||||
"${f.name.text} and ${tagToName[intValue]}";
|
||||
}
|
||||
tagToName[intValue] = f.name.name;
|
||||
tagToName[intValue] = f.name.text;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ void checkIsRedirectingFactory(ir.Component component, String uriPath,
|
|||
component.libraries.firstWhere((l) => l.importUri.path.endsWith(uriPath));
|
||||
var cls = lib.classes.firstWhere((c) => c.name == className);
|
||||
ir.Procedure member =
|
||||
cls.members.firstWhere((m) => m.name.name == constructorName);
|
||||
cls.members.firstWhere((m) => m.name.text == constructorName);
|
||||
Expect.isTrue(
|
||||
member.kind == ir.ProcedureKind.Factory, "$member is not a factory");
|
||||
Expect.isTrue(api.isRedirectingFactory(member));
|
||||
|
|
|
@ -114,10 +114,10 @@ class VerifyingVisitor extends RecursiveVisitor<Null> {
|
|||
|
||||
@override
|
||||
visitProcedure(Procedure node) {
|
||||
expectedSpan = test.spans[node.name.name];
|
||||
expectedSpan = test.spans[node.name.text];
|
||||
if (expectedSpan != null) {
|
||||
super.visitProcedure(node);
|
||||
verified.add(node.name.name);
|
||||
verified.add(node.name.text);
|
||||
expectedSpan = null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -151,7 +151,7 @@ class InheritanceDataExtractor extends CfeDataExtractor<String> {
|
|||
return;
|
||||
}
|
||||
|
||||
String memberName = name.name;
|
||||
String memberName = name.text;
|
||||
if (isSetter) {
|
||||
memberName += '=';
|
||||
}
|
||||
|
|
|
@ -1013,7 +1013,7 @@ void checkClassHierarchy(TestIncrementalCompiler compiler, Component component,
|
|||
if (info.lazyDeclaredGettersAndCalls != null) {
|
||||
sb.writeln(" - lazyDeclaredGettersAndCalls:");
|
||||
for (Member member in info.lazyDeclaredGettersAndCalls) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
|
||||
// Expect these to be the same as in the class.
|
||||
|
@ -1022,7 +1022,7 @@ void checkClassHierarchy(TestIncrementalCompiler compiler, Component component,
|
|||
if (f.isStatic) continue;
|
||||
if (!f.hasImplicitGetter) continue;
|
||||
if (!members.remove(f)) {
|
||||
throw "Didn't find ${f.name.name} in lazyDeclaredGettersAndCalls "
|
||||
throw "Didn't find ${f.name.text} in lazyDeclaredGettersAndCalls "
|
||||
"for ${c.name} in ${library.importUri}";
|
||||
}
|
||||
}
|
||||
|
@ -1030,19 +1030,19 @@ void checkClassHierarchy(TestIncrementalCompiler compiler, Component component,
|
|||
if (p.isStatic) continue;
|
||||
if (p.isSetter) continue;
|
||||
if (!members.remove(p)) {
|
||||
throw "Didn't find ${p.name.name} in lazyDeclaredGettersAndCalls "
|
||||
throw "Didn't find ${p.name.text} in lazyDeclaredGettersAndCalls "
|
||||
"for ${c.name} in ${library.importUri}";
|
||||
}
|
||||
}
|
||||
if (members.isNotEmpty) {
|
||||
throw "Still have ${members.map((m) => m.name.name)} left "
|
||||
throw "Still have ${members.map((m) => m.name.text)} left "
|
||||
"for ${c.name} in ${library.importUri}";
|
||||
}
|
||||
}
|
||||
if (info.lazyDeclaredSetters != null) {
|
||||
sb.writeln(" - lazyDeclaredSetters:");
|
||||
for (Member member in info.lazyDeclaredSetters) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
|
||||
// Expect these to be the same as in the class.
|
||||
|
@ -1062,32 +1062,32 @@ void checkClassHierarchy(TestIncrementalCompiler compiler, Component component,
|
|||
}
|
||||
}
|
||||
if (members.isNotEmpty) {
|
||||
throw "Still have ${members.map((m) => m.name.name)} left "
|
||||
throw "Still have ${members.map((m) => m.name.text)} left "
|
||||
"for ${c.name} in ${library.importUri}";
|
||||
}
|
||||
}
|
||||
if (info.lazyImplementedGettersAndCalls != null) {
|
||||
sb.writeln(" - lazyImplementedGettersAndCalls:");
|
||||
for (Member member in info.lazyImplementedGettersAndCalls) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
}
|
||||
if (info.lazyImplementedSetters != null) {
|
||||
sb.writeln(" - lazyImplementedSetters:");
|
||||
for (Member member in info.lazyImplementedSetters) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
}
|
||||
if (info.lazyInterfaceGettersAndCalls != null) {
|
||||
sb.writeln(" - lazyInterfaceGettersAndCalls:");
|
||||
for (Member member in info.lazyInterfaceGettersAndCalls) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
}
|
||||
if (info.lazyInterfaceSetters != null) {
|
||||
sb.writeln(" - lazyInterfaceSetters:");
|
||||
for (Member member in info.lazyInterfaceSetters) {
|
||||
sb.writeln(" - ${member.name.name}");
|
||||
sb.writeln(" - ${member.name.text}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1292,10 +1292,10 @@ Map<String, Set<String>> buildMapOfContent(Component component) {
|
|||
libContent.add("Class ${c.name}");
|
||||
}
|
||||
for (Procedure p in lib.procedures) {
|
||||
libContent.add("Procedure ${p.name.name}");
|
||||
libContent.add("Procedure ${p.name.text}");
|
||||
}
|
||||
for (Field f in lib.fields) {
|
||||
libContent.add("Field ${f.name.name}");
|
||||
libContent.add("Field ${f.name.text}");
|
||||
}
|
||||
}
|
||||
return actualContent;
|
||||
|
@ -1657,7 +1657,7 @@ class TestIncrementalCompiler extends IncrementalCompiler {
|
|||
void doSimulateTransformer(Component c) {
|
||||
for (Library lib in c.libraries) {
|
||||
if (lib.fields
|
||||
.where((f) => f.name.name == "unique_SimulateTransformer")
|
||||
.where((f) => f.name.text == "unique_SimulateTransformer")
|
||||
.toList()
|
||||
.isNotEmpty) continue;
|
||||
Name fieldName = new Name("unique_SimulateTransformer");
|
||||
|
@ -1669,7 +1669,7 @@ void doSimulateTransformer(Component c) {
|
|||
lib.addMember(field);
|
||||
for (Class c in lib.classes) {
|
||||
if (c.fields
|
||||
.where((f) => f.name.name == "unique_SimulateTransformer")
|
||||
.where((f) => f.name.text == "unique_SimulateTransformer")
|
||||
.toList()
|
||||
.isNotEmpty) continue;
|
||||
fieldName = new Name("unique_SimulateTransformer");
|
||||
|
|
|
@ -74,7 +74,7 @@ main() {
|
|||
(await compileScript('main() => print("hi");', options: options))
|
||||
?.component;
|
||||
var core = component.libraries.firstWhere(isDartCoreLibrary);
|
||||
var printMember = core.members.firstWhere((m) => m.name.name == 'print');
|
||||
var printMember = core.members.firstWhere((m) => m.name.text == 'print');
|
||||
|
||||
// Note: summaries created by the SDK today contain empty statements as
|
||||
// method bodies.
|
||||
|
|
|
@ -149,7 +149,7 @@ class PatchingDataExtractor extends CfeDataExtractor<Features> {
|
|||
// Don't include member signatures.
|
||||
continue;
|
||||
}
|
||||
String name = m.name.name;
|
||||
String name = m.name.text;
|
||||
if (m is Constructor) {
|
||||
name = '${m.enclosingClass.name}.${name}';
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ main() {
|
|||
var classA = aLib.classes.first;
|
||||
expect(classA.name, 'A');
|
||||
var fooMethod = classA.procedures.first;
|
||||
expect(fooMethod.name.name, 'foo');
|
||||
expect(fooMethod.name.text, 'foo');
|
||||
expect(fooMethod.function.body is EmptyStatement, isTrue);
|
||||
});
|
||||
|
||||
|
|
|
@ -134,8 +134,8 @@ class TextRepresentationDataExtractor extends CfeDataExtractor<String> {
|
|||
|
||||
@override
|
||||
visitProcedure(Procedure node) {
|
||||
if (!node.name.name.startsWith(expressionMarker) &&
|
||||
!node.name.name.startsWith(statementMarker)) {
|
||||
if (!node.name.text.startsWith(expressionMarker) &&
|
||||
!node.name.text.startsWith(statementMarker)) {
|
||||
node.function.accept(this);
|
||||
}
|
||||
computeForMember(node);
|
||||
|
@ -143,8 +143,8 @@ class TextRepresentationDataExtractor extends CfeDataExtractor<String> {
|
|||
|
||||
@override
|
||||
visitField(Field node) {
|
||||
if (!node.name.name.startsWith(expressionMarker) &&
|
||||
!node.name.name.startsWith(statementMarker)) {
|
||||
if (!node.name.text.startsWith(expressionMarker) &&
|
||||
!node.name.text.startsWith(statementMarker)) {
|
||||
node.initializer?.accept(this);
|
||||
}
|
||||
computeForMember(node);
|
||||
|
@ -152,10 +152,10 @@ class TextRepresentationDataExtractor extends CfeDataExtractor<String> {
|
|||
|
||||
@override
|
||||
String computeMemberValue(Id id, Member node) {
|
||||
if (node.name.name == 'stmtVariableDeclarationMulti') {
|
||||
if (node.name.text == 'stmtVariableDeclarationMulti') {
|
||||
print(node);
|
||||
}
|
||||
if (node.name.name.startsWith(expressionMarker)) {
|
||||
if (node.name.text.startsWith(expressionMarker)) {
|
||||
if (node is Procedure) {
|
||||
Statement body = node.function.body;
|
||||
if (body is ReturnStatement) {
|
||||
|
@ -164,7 +164,7 @@ class TextRepresentationDataExtractor extends CfeDataExtractor<String> {
|
|||
} else if (node is Field && node.initializer != null) {
|
||||
return node.initializer.toText(strategy);
|
||||
}
|
||||
} else if (node.name.name.startsWith(statementMarker)) {
|
||||
} else if (node.name.text.startsWith(statementMarker)) {
|
||||
if (node is Procedure) {
|
||||
Statement body = node.function.body;
|
||||
if (body is Block && body.statements.length == 1) {
|
||||
|
|
|
@ -164,7 +164,7 @@ class BenchMaker implements DartTypeVisitor1<void, StringBuffer> {
|
|||
}
|
||||
Procedure callOperator;
|
||||
for (Procedure procedure in cls.procedures) {
|
||||
if (procedure.name.name == "call") {
|
||||
if (procedure.name.text == "call") {
|
||||
callOperator = procedure;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3252,7 +3252,7 @@ class PropertyGet extends Expression {
|
|||
.substituteType(interfaceTarget.getterType);
|
||||
}
|
||||
// Treat the properties of Object specially.
|
||||
String nameString = name.name;
|
||||
String nameString = name.text;
|
||||
if (nameString == 'hashCode') {
|
||||
return context.typeEnvironment.coreTypes.intRawType(context.nonNullable);
|
||||
} else if (nameString == 'runtimeType') {
|
||||
|
@ -3979,7 +3979,7 @@ class MethodInvocation extends InvocationExpression {
|
|||
}
|
||||
return const DynamicType();
|
||||
}
|
||||
if (name.name == 'call') {
|
||||
if (name.text == 'call') {
|
||||
var receiverType = receiver.getStaticType(context);
|
||||
if (receiverType is FunctionType) {
|
||||
if (receiverType.typeParameters.length != arguments.types.length) {
|
||||
|
@ -3990,7 +3990,7 @@ class MethodInvocation extends InvocationExpression {
|
|||
.substituteType(receiverType.returnType);
|
||||
}
|
||||
}
|
||||
if (name.name == '==') {
|
||||
if (name.text == '==') {
|
||||
// We use this special case to simplify generation of '==' checks.
|
||||
return context.typeEnvironment.coreTypes.boolRawType(context.nonNullable);
|
||||
}
|
||||
|
@ -4243,9 +4243,9 @@ class ConstructorInvocation extends InvocationExpression {
|
|||
}
|
||||
printer.writeClassName(target.enclosingClass.reference);
|
||||
printer.writeTypeArguments(arguments.types);
|
||||
if (target.name.name.isNotEmpty) {
|
||||
if (target.name.text.isNotEmpty) {
|
||||
printer.write('.');
|
||||
printer.write(target.name.name);
|
||||
printer.write(target.name.text);
|
||||
}
|
||||
printer.writeArguments(arguments, includeTypeArguments: false);
|
||||
}
|
||||
|
@ -7085,29 +7085,29 @@ class FunctionDeclaration extends Statement implements LocalFunction {
|
|||
/// library name for private names; uniqueness is not guaranteed.
|
||||
abstract class Name extends Node {
|
||||
final int hashCode;
|
||||
final String name;
|
||||
final String text;
|
||||
Reference get libraryName;
|
||||
Library get library;
|
||||
bool get isPrivate;
|
||||
|
||||
Name._internal(this.hashCode, this.name);
|
||||
Name._internal(this.hashCode, this.text);
|
||||
|
||||
factory Name(String name, [Library library]) =>
|
||||
new Name.byReference(name, library?.reference);
|
||||
factory Name(String text, [Library library]) =>
|
||||
new Name.byReference(text, library?.reference);
|
||||
|
||||
factory Name.byReference(String name, Reference libraryName) {
|
||||
factory Name.byReference(String text, Reference libraryName) {
|
||||
/// Use separate subclasses for the public and private case to save memory
|
||||
/// for public names.
|
||||
if (name.startsWith('_')) {
|
||||
if (text.startsWith('_')) {
|
||||
assert(libraryName != null);
|
||||
return new _PrivateName(name, libraryName);
|
||||
return new _PrivateName(text, libraryName);
|
||||
} else {
|
||||
return new _PublicName(name);
|
||||
return new _PublicName(text);
|
||||
}
|
||||
}
|
||||
|
||||
bool operator ==(other) {
|
||||
return other is Name && name == other.name && library == other.library;
|
||||
return other is Name && text == other.text && library == other.library;
|
||||
}
|
||||
|
||||
R accept<R>(Visitor<R> v) => v.visitName(this);
|
||||
|
@ -7132,13 +7132,13 @@ class _PrivateName extends Name {
|
|||
final Reference libraryName;
|
||||
bool get isPrivate => true;
|
||||
|
||||
_PrivateName(String name, Reference libraryName)
|
||||
_PrivateName(String text, Reference libraryName)
|
||||
: this.libraryName = libraryName,
|
||||
super._internal(_computeHashCode(name, libraryName), name);
|
||||
super._internal(_computeHashCode(text, libraryName), text);
|
||||
|
||||
String toString() => toStringInternal();
|
||||
|
||||
String toStringInternal() => library != null ? '$library::$name' : name;
|
||||
String toStringInternal() => library != null ? '$library::$text' : text;
|
||||
|
||||
Library get library => libraryName.asLibrary;
|
||||
|
||||
|
@ -7155,7 +7155,7 @@ class _PublicName extends Name {
|
|||
Library get library => null;
|
||||
bool get isPrivate => false;
|
||||
|
||||
_PublicName(String name) : super._internal(name.hashCode, name);
|
||||
_PublicName(String text) : super._internal(text.hashCode, text);
|
||||
|
||||
String toString() => toStringInternal();
|
||||
}
|
||||
|
|
|
@ -1324,7 +1324,7 @@ class BinaryBuilder {
|
|||
var name = readName();
|
||||
var annotations = readAnnotationList(node);
|
||||
assert(() {
|
||||
debugPath.add(node.name?.name ?? 'field');
|
||||
debugPath.add(node.name?.text ?? 'field');
|
||||
return true;
|
||||
}());
|
||||
var type = readDartType();
|
||||
|
@ -1364,7 +1364,7 @@ class BinaryBuilder {
|
|||
var name = readName();
|
||||
var annotations = readAnnotationList(node);
|
||||
assert(() {
|
||||
debugPath.add(node.name?.name ?? 'constructor');
|
||||
debugPath.add(node.name?.text ?? 'constructor');
|
||||
return true;
|
||||
}());
|
||||
var function = readFunctionNode();
|
||||
|
@ -1408,7 +1408,7 @@ class BinaryBuilder {
|
|||
var name = readName();
|
||||
var annotations = readAnnotationList(node);
|
||||
assert(() {
|
||||
debugPath.add(node.name?.name ?? 'procedure');
|
||||
debugPath.add(node.name?.text ?? 'procedure');
|
||||
return true;
|
||||
}());
|
||||
int functionNodeSize = endOffset - _byteOffset;
|
||||
|
@ -1469,7 +1469,7 @@ class BinaryBuilder {
|
|||
var name = readName();
|
||||
var annotations = readAnnotationList(node);
|
||||
assert(() {
|
||||
debugPath.add(node.name?.name ?? 'redirecting-factory-constructor');
|
||||
debugPath.add(node.name?.text ?? 'redirecting-factory-constructor');
|
||||
return true;
|
||||
}());
|
||||
var targetReference = readMemberReference();
|
||||
|
|
|
@ -937,7 +937,7 @@ class BinaryPrinter implements Visitor<void>, BinarySink {
|
|||
if (_metadataSubsections != null) {
|
||||
_writeNodeMetadata(node);
|
||||
}
|
||||
writeStringReference(node.name);
|
||||
writeStringReference(node.text);
|
||||
// TODO: Consider a more compressed format for private names within the
|
||||
// enclosing library.
|
||||
if (node.isPrivate) {
|
||||
|
|
|
@ -118,8 +118,8 @@ class CanonicalName {
|
|||
|
||||
CanonicalName getChildFromQualifiedName(Name name) {
|
||||
return name.isPrivate
|
||||
? getChildFromUri(name.library.importUri).getChild(name.name)
|
||||
: getChild(name.name);
|
||||
? getChildFromUri(name.library.importUri).getChild(name.text)
|
||||
: getChild(name.text);
|
||||
}
|
||||
|
||||
CanonicalName getChildFromMember(Member member) {
|
||||
|
|
|
@ -281,8 +281,8 @@ abstract class ClassHierarchy implements ClassHierarchyBase {
|
|||
int firstHash = firstName.hashCode;
|
||||
int secondHash = secondName.hashCode;
|
||||
if (firstHash != secondHash) return firstHash - secondHash;
|
||||
String firstString = firstName.name;
|
||||
String secondString = secondName.name;
|
||||
String firstString = firstName.text;
|
||||
String secondString = secondName.text;
|
||||
int firstLength = firstString.length;
|
||||
int secondLength = secondString.length;
|
||||
if (firstLength != secondLength) {
|
||||
|
|
|
@ -65,7 +65,7 @@ Incompatible override of ${superMember} with ${ownMember}:
|
|||
final parent = context.parent;
|
||||
final parentName =
|
||||
parent is Class ? parent.name : (parent as Library).name;
|
||||
name = "${parentName}::${context.name.name}";
|
||||
name = "${parentName}::${context.name.text}";
|
||||
} else {
|
||||
final field = context as Field;
|
||||
if (where is Field) {
|
||||
|
|
|
@ -220,10 +220,10 @@ class _MemberTable {
|
|||
|
||||
String getDisambiguatedName(Member member) {
|
||||
if (member is Procedure) {
|
||||
if (member.isGetter) return LibraryIndex.getterPrefix + member.name.name;
|
||||
if (member.isSetter) return LibraryIndex.setterPrefix + member.name.name;
|
||||
if (member.isGetter) return LibraryIndex.getterPrefix + member.name.text;
|
||||
if (member.isSetter) return LibraryIndex.setterPrefix + member.name.text;
|
||||
}
|
||||
return member.name.name;
|
||||
return member.name.text;
|
||||
}
|
||||
|
||||
void addMember(Member member) {
|
||||
|
@ -238,12 +238,12 @@ class _MemberTable {
|
|||
String getDisambiguatedExtensionName(
|
||||
ExtensionMemberDescriptor extensionMember) {
|
||||
if (extensionMember.kind == ExtensionMemberKind.TearOff)
|
||||
return LibraryIndex.tearoffPrefix + extensionMember.name.name;
|
||||
return LibraryIndex.tearoffPrefix + extensionMember.name.text;
|
||||
if (extensionMember.kind == ExtensionMemberKind.Getter)
|
||||
return LibraryIndex.getterPrefix + extensionMember.name.name;
|
||||
return LibraryIndex.getterPrefix + extensionMember.name.text;
|
||||
if (extensionMember.kind == ExtensionMemberKind.Setter)
|
||||
return LibraryIndex.setterPrefix + extensionMember.name.name;
|
||||
return extensionMember.name.name;
|
||||
return LibraryIndex.setterPrefix + extensionMember.name.text;
|
||||
return extensionMember.name.text;
|
||||
}
|
||||
|
||||
void addExtensionMember(ExtensionMemberDescriptor extensionMember) {
|
||||
|
|
|
@ -272,7 +272,7 @@ super method declares ${superParameter.type}
|
|||
// Permit any invocation on Function type.
|
||||
if (receiver == environment.coreTypes.functionLegacyRawType &&
|
||||
where is MethodInvocation &&
|
||||
where.name.name == 'call') {
|
||||
where.name.text == 'call') {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -48,14 +48,14 @@ class IndexedLibrary {
|
|||
for (int i = 0; i < library.procedures.length; i++) {
|
||||
Procedure procedure = library.procedures[i];
|
||||
if (procedure.isSetter) {
|
||||
_proceduresSetters[procedure.name.name] = procedure;
|
||||
_proceduresSetters[procedure.name.text] = procedure;
|
||||
} else {
|
||||
_proceduresNotSetters[procedure.name.name] = procedure;
|
||||
_proceduresNotSetters[procedure.name.text] = procedure;
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < library.fields.length; i++) {
|
||||
Field field = library.fields[i];
|
||||
_fields[field.name.name] = field;
|
||||
_fields[field.name.text] = field;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -80,19 +80,19 @@ class IndexedClass {
|
|||
IndexedClass._(Class c) {
|
||||
for (int i = 0; i < c.constructors.length; i++) {
|
||||
Constructor constructor = c.constructors[i];
|
||||
_constructors[constructor.name.name] = constructor;
|
||||
_constructors[constructor.name.text] = constructor;
|
||||
}
|
||||
for (int i = 0; i < c.procedures.length; i++) {
|
||||
Procedure procedure = c.procedures[i];
|
||||
if (procedure.isSetter) {
|
||||
_proceduresSetters[procedure.name.name] = procedure;
|
||||
_proceduresSetters[procedure.name.text] = procedure;
|
||||
} else {
|
||||
_proceduresNotSetters[procedure.name.name] = procedure;
|
||||
_proceduresNotSetters[procedure.name.text] = procedure;
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < c.fields.length; i++) {
|
||||
Field field = c.fields[i];
|
||||
_fields[field.name.name] = field;
|
||||
_fields[field.name.text] = field;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -22,9 +22,9 @@ String nameToString(Name node, {bool includeLibraryName: false}) {
|
|||
if (node == null) {
|
||||
return 'null';
|
||||
} else if (node.library != null && includeLibraryName) {
|
||||
return '${libraryNameToString(node.library)}::${node.name}';
|
||||
return '${libraryNameToString(node.library)}::${node.text}';
|
||||
} else {
|
||||
return node.name;
|
||||
return node.text;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -205,7 +205,7 @@ String qualifiedMemberNameToStringByReference(Reference reference,
|
|||
}
|
||||
|
||||
String memberNameToString(Member node) {
|
||||
return node.name?.name ??
|
||||
return node.name?.text ??
|
||||
"null-named member ${node.runtimeType} ${node.hashCode}";
|
||||
}
|
||||
|
||||
|
|
|
@ -119,7 +119,7 @@ String debugQualifiedClassName(Class node) {
|
|||
}
|
||||
|
||||
String debugMemberName(Member node) {
|
||||
return node.name?.name ?? globalDebuggingNames.nameMember(node);
|
||||
return node.name?.text ?? globalDebuggingNames.nameMember(node);
|
||||
}
|
||||
|
||||
String debugQualifiedMemberName(Member node) {
|
||||
|
@ -341,14 +341,14 @@ class Printer extends Visitor<Null> {
|
|||
static final Name emptyName = new Name(emptyNameString);
|
||||
|
||||
Name getMemberName(Member node) {
|
||||
if (node.name?.name == '') return emptyName;
|
||||
if (node.name?.text == '') return emptyName;
|
||||
if (node.name != null) return node.name;
|
||||
return new Name(syntheticNames.nameMember(node));
|
||||
}
|
||||
|
||||
String getMemberReference(Member node) {
|
||||
if (node == null) return '<No Member>';
|
||||
String name = getMemberName(node).name;
|
||||
String name = getMemberName(node).text;
|
||||
if (node.parent is Class) {
|
||||
String className = getClassReference(node.parent);
|
||||
return '$className::$name';
|
||||
|
@ -481,11 +481,11 @@ class Printer extends Visitor<Null> {
|
|||
} else if (node is Field) {
|
||||
Library nodeLibrary = node.enclosingLibrary;
|
||||
String prefix = syntheticNames.nameLibraryPrefix(nodeLibrary);
|
||||
write(prefix + '::' + node.name.name);
|
||||
write(prefix + '::' + node.name.text);
|
||||
} else if (node is Procedure) {
|
||||
Library nodeLibrary = node.enclosingLibrary;
|
||||
String prefix = syntheticNames.nameLibraryPrefix(nodeLibrary);
|
||||
write(prefix + '::' + node.name.name);
|
||||
write(prefix + '::' + node.name.text);
|
||||
} else if (node is Typedef) {
|
||||
Library nodeLibrary = node.enclosingLibrary;
|
||||
String prefix = syntheticNames.nameLibraryPrefix(nodeLibrary);
|
||||
|
@ -701,10 +701,10 @@ class Printer extends Visitor<Null> {
|
|||
}
|
||||
|
||||
void writeName(Name name) {
|
||||
if (name?.name == '') {
|
||||
if (name?.text == '') {
|
||||
writeWord(emptyNameString);
|
||||
} else {
|
||||
writeWord(name?.name ?? '<anonymous>'); // TODO: write library name
|
||||
writeWord(name?.text ?? '<anonymous>'); // TODO: write library name
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1458,7 +1458,7 @@ class Printer extends Visitor<Null> {
|
|||
if (!first) {
|
||||
writeComma();
|
||||
}
|
||||
writeWord('${fieldRef.asField.name.name}');
|
||||
writeWord('${fieldRef.asField.name.text}');
|
||||
writeSymbol(':');
|
||||
writeExpression(value);
|
||||
first = false;
|
||||
|
@ -2366,7 +2366,7 @@ class Printer extends Visitor<Null> {
|
|||
writeList(node.fieldValues.entries,
|
||||
(core.MapEntry<Reference, Constant> entry) {
|
||||
if (entry.key.node != null) {
|
||||
writeWord('${entry.key.asField.name.name}');
|
||||
writeWord('${entry.key.asField.name.text}');
|
||||
} else {
|
||||
writeWord('${entry.key.canonicalName.name}');
|
||||
}
|
||||
|
|
|
@ -21,10 +21,10 @@ class NameTagger implements Tagger<Name> {
|
|||
}
|
||||
|
||||
TextSerializer<Name> publicName =
|
||||
Wrapped((w) => w.name, (u) => Name(u), const DartString());
|
||||
Wrapped((w) => w.text, (u) => Name(u), const DartString());
|
||||
|
||||
TextSerializer<Name> privateName = Wrapped(
|
||||
(w) => Tuple2(w.name, w.library.canonicalName),
|
||||
(w) => Tuple2(w.text, w.library.canonicalName),
|
||||
(u) => Name.byReference(u.first, u.second.getReference()),
|
||||
Tuple2Serializer(DartString(), CanonicalNameSerializer()));
|
||||
|
||||
|
|
|
@ -153,7 +153,7 @@ class MixinFullResolution {
|
|||
|
||||
for (var field in class_.mixin.fields) {
|
||||
Field clone =
|
||||
cloner.cloneField(field, indexedClass?.lookupField(field.name.name));
|
||||
cloner.cloneField(field, indexedClass?.lookupField(field.name.text));
|
||||
Procedure setter = setters[field.name];
|
||||
if (setter != null) {
|
||||
setters.remove(field.name);
|
||||
|
@ -187,10 +187,10 @@ class MixinFullResolution {
|
|||
Procedure referenceFrom;
|
||||
if (procedure.isSetter) {
|
||||
referenceFrom =
|
||||
indexedClass?.lookupProcedureSetter(procedure.name.name);
|
||||
indexedClass?.lookupProcedureSetter(procedure.name.text);
|
||||
} else {
|
||||
referenceFrom =
|
||||
indexedClass?.lookupProcedureNotSetter(procedure.name.name);
|
||||
indexedClass?.lookupProcedureNotSetter(procedure.name.text);
|
||||
}
|
||||
|
||||
// Linear search for a forwarding stub with the same name.
|
||||
|
@ -270,7 +270,7 @@ class SuperCallResolutionTransformer extends Transformer {
|
|||
return new DirectPropertyGet(new ThisExpression(), target)
|
||||
..fileOffset = node.fileOffset;
|
||||
} else {
|
||||
return _callNoSuchMethod(node.name.name, new Arguments.empty(), node,
|
||||
return _callNoSuchMethod(node.name.text, new Arguments.empty(), node,
|
||||
isGetter: true, isSuper: true);
|
||||
}
|
||||
}
|
||||
|
@ -287,7 +287,7 @@ class SuperCallResolutionTransformer extends Transformer {
|
|||
VariableDeclaration rightHandSide =
|
||||
new VariableDeclaration.forValue(visit(node.value));
|
||||
Expression result = _callNoSuchMethod(
|
||||
node.name.name, new Arguments([new VariableGet(rightHandSide)]), node,
|
||||
node.name.text, new Arguments([new VariableGet(rightHandSide)]), node,
|
||||
isSetter: true, isSuper: true);
|
||||
VariableDeclaration call = new VariableDeclaration.forValue(result);
|
||||
return new Let(
|
||||
|
@ -306,7 +306,7 @@ class SuperCallResolutionTransformer extends Transformer {
|
|||
..fileOffset = node.fileOffset;
|
||||
} else if (target == null || (target is Procedure && !target.isAccessor)) {
|
||||
// Target not found at all, or call was illegal.
|
||||
return _callNoSuchMethod(node.name.name, visitedArguments, node,
|
||||
return _callNoSuchMethod(node.name.text, visitedArguments, node,
|
||||
isSuper: true);
|
||||
} else {
|
||||
return new MethodInvocation(
|
||||
|
|
|
@ -360,7 +360,7 @@ class WidgetCreatorTracker {
|
|||
void _transformClassImplementingWidget(
|
||||
Class clazz, ChangedStructureNotifier changedStructureNotifier) {
|
||||
if (clazz.fields
|
||||
.any((Field field) => field.name.name == _locationFieldName)) {
|
||||
.any((Field field) => field.name.text == _locationFieldName)) {
|
||||
// This class has already been transformed. Skip
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@ class HashCombineMethodsScanner extends ProcedureScanner<Null> {
|
|||
HashCombineMethodsScanner() : super(null);
|
||||
|
||||
bool predicate(Procedure node) {
|
||||
return node.name.name == "combine" || node.name.name == "finish";
|
||||
return node.name.text == "combine" || node.name.text == "finish";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -73,7 +73,7 @@ void addConstructor(
|
|||
Class cls, CoreTypes coreTypes, Constructor syntheticConstructor) {
|
||||
Constructor superConstructor = null;
|
||||
for (Constructor constructor in cls.superclass.constructors) {
|
||||
if (constructor.name.name == "") {
|
||||
if (constructor.name.text == "") {
|
||||
superConstructor = constructor;
|
||||
}
|
||||
}
|
||||
|
@ -83,14 +83,14 @@ void addConstructor(
|
|||
..parent = syntheticConstructor.function)
|
||||
.toList();
|
||||
Map<String, VariableDeclaration> ownFields = Map.fromIterable(cls.fields,
|
||||
key: (f) => f.name.name,
|
||||
key: (f) => f.name.text,
|
||||
value: (f) =>
|
||||
VariableDeclaration(f.name.name, type: f.type, isRequired: true)
|
||||
VariableDeclaration(f.name.text, type: f.type, isRequired: true)
|
||||
..parent = syntheticConstructor.function);
|
||||
|
||||
List<Initializer> initializersConstructor = cls.fields
|
||||
.map<Initializer>((f) =>
|
||||
FieldInitializer(f, VariableGet(ownFields[f.name.name]))
|
||||
FieldInitializer(f, VariableGet(ownFields[f.name.text]))
|
||||
..parent = syntheticConstructor)
|
||||
.toList();
|
||||
|
||||
|
@ -124,7 +124,7 @@ void addEqualsOperator(Class cls, CoreTypes coreTypes, ClassHierarchy hierarchy,
|
|||
List<VariableDeclaration> allVariables) {
|
||||
for (Procedure procedure in cls.procedures) {
|
||||
if (procedure.kind == ProcedureKind.Operator &&
|
||||
procedure.name.name == "==") {
|
||||
procedure.name.text == "==") {
|
||||
// ==operator is already implemented, spec is to do nothing
|
||||
return;
|
||||
}
|
||||
|
@ -180,7 +180,7 @@ void addHashCode(Class cls, CoreTypes coreTypes, ClassHierarchy hierarchy,
|
|||
List<VariableDeclaration> allVariables) {
|
||||
for (Procedure procedure in cls.procedures) {
|
||||
if (procedure.kind == ProcedureKind.Getter &&
|
||||
procedure.name.name == "hashCode") {
|
||||
procedure.name.text == "hashCode") {
|
||||
// hashCode getter is already implemented, spec is to do nothing
|
||||
return;
|
||||
}
|
||||
|
@ -198,8 +198,8 @@ void addHashCode(Class cls, CoreTypes coreTypes, ClassHierarchy hierarchy,
|
|||
jenkinsScanner.scan(cls.enclosingLibrary.enclosingComponent);
|
||||
for (Class clazz in hashMethodsResult.targets.keys) {
|
||||
for (Procedure procedure in hashMethodsResult.targets[clazz].targets.keys) {
|
||||
if (procedure.name.name == "combine") hashCombine = procedure;
|
||||
if (procedure.name.name == "finish") hashFinish = procedure;
|
||||
if (procedure.name.text == "combine") hashCombine = procedure;
|
||||
if (procedure.name.text == "finish") hashFinish = procedure;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -280,7 +280,7 @@ void addCopyWith(Class cls, CoreTypes coreTypes, ClassHierarchy hierarchy,
|
|||
List<VariableDeclaration> queryAllInstanceVariables(Class cls) {
|
||||
Constructor superConstructor = null;
|
||||
for (Constructor constructor in cls.superclass.constructors) {
|
||||
if (constructor.name.name == "") {
|
||||
if (constructor.name.text == "") {
|
||||
superConstructor = constructor;
|
||||
}
|
||||
}
|
||||
|
@ -289,5 +289,5 @@ List<VariableDeclaration> queryAllInstanceVariables(Class cls) {
|
|||
(f) => VariableDeclaration(f.name, type: f.type))
|
||||
.toList()
|
||||
..addAll(cls.fields.map<VariableDeclaration>(
|
||||
(f) => VariableDeclaration(f.name.name, type: f.type)));
|
||||
(f) => VariableDeclaration(f.name.text, type: f.type)));
|
||||
}
|
||||
|
|
|
@ -622,11 +622,11 @@ class TypeCheckingVisitor
|
|||
var target = node.interfaceTarget;
|
||||
if (target == null) {
|
||||
var receiver = visitExpression(node.receiver);
|
||||
if (node.name.name == '==') {
|
||||
if (node.name.text == '==') {
|
||||
visitExpression(node.arguments.positional.single);
|
||||
return environment.coreTypes.boolLegacyRawType;
|
||||
}
|
||||
if (node.name.name == 'call' && receiver is FunctionType) {
|
||||
if (node.name.text == 'call' && receiver is FunctionType) {
|
||||
return handleFunctionCall(node, receiver, node.arguments);
|
||||
}
|
||||
checkUnresolvedInvocation(receiver, node);
|
||||
|
|
|
@ -156,7 +156,7 @@ abstract class TypeEnvironment extends Types {
|
|||
if (class_ == coreTypes.intClass ||
|
||||
class_ == coreTypes.numClass ||
|
||||
class_ == coreTypes.doubleClass) {
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
return name == '+' ||
|
||||
name == '-' ||
|
||||
name == '*' ||
|
||||
|
@ -166,7 +166,7 @@ abstract class TypeEnvironment extends Types {
|
|||
} else {
|
||||
Class class_ = member.enclosingClass;
|
||||
if (class_ == coreTypes.intClass || class_ == coreTypes.numClass) {
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
return name == '+' ||
|
||||
name == '-' ||
|
||||
name == '*' ||
|
||||
|
@ -184,7 +184,7 @@ abstract class TypeEnvironment extends Types {
|
|||
if (isNonNullableByDefault) {
|
||||
Class class_ = member.enclosingClass;
|
||||
if (class_ == coreTypes.intClass || class_ == coreTypes.numClass) {
|
||||
String name = member.name.name;
|
||||
String name = member.name.text;
|
||||
return name == 'clamp';
|
||||
}
|
||||
}
|
||||
|
|
|
@ -273,11 +273,11 @@ class VerifyingVisitor extends RecursiveVisitor<void> {
|
|||
var oldParent = enterParent(node);
|
||||
bool isTopLevel = node.parent == currentLibrary;
|
||||
if (isTopLevel && !node.isStatic) {
|
||||
problem(node, "The top-level field '${node.name.name}' should be static",
|
||||
problem(node, "The top-level field '${node.name.text}' should be static",
|
||||
context: node);
|
||||
}
|
||||
if (node.isConst && !node.isStatic) {
|
||||
problem(node, "The const field '${node.name.name}' should be static",
|
||||
problem(node, "The const field '${node.name.text}' should be static",
|
||||
context: node);
|
||||
}
|
||||
classTypeParametersAreInScope = !node.isStatic;
|
||||
|
|
|
@ -1610,7 +1610,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
return;
|
||||
}
|
||||
if (condition is MethodInvocation &&
|
||||
condition.name.name == '==' &&
|
||||
condition.name.text == '==' &&
|
||||
(condition.receiver is NullLiteral ||
|
||||
condition.arguments.positional.single is NullLiteral)) {
|
||||
if (condition.receiver is NullLiteral) {
|
||||
|
@ -1855,7 +1855,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
|
||||
// Generate additional code for 'operator ==' to handle nulls.
|
||||
void _genEqualsOperatorNullHandling(Member member) {
|
||||
if (member.name.name != '==' ||
|
||||
if (member.name.text != '==' ||
|
||||
locals.numParameters != 2 ||
|
||||
member.enclosingClass == coreTypes.objectClass) {
|
||||
return;
|
||||
|
@ -3525,7 +3525,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
if (target == null) {
|
||||
final int temp = locals.tempIndexInFrame(node);
|
||||
_genNoSuchMethodForSuperCall(
|
||||
node.name.name,
|
||||
node.name.text,
|
||||
temp,
|
||||
cp.addArgDescByArguments(args, hasReceiver: true),
|
||||
args.types,
|
||||
|
@ -3549,7 +3549,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
hierarchy.getDispatchTarget(enclosingClass.superclass, node.name);
|
||||
if (target == null) {
|
||||
final int temp = locals.tempIndexInFrame(node);
|
||||
_genNoSuchMethodForSuperCall(node.name.name, temp, cp.addArgDesc(1), [],
|
||||
_genNoSuchMethodForSuperCall(node.name.text, temp, cp.addArgDesc(1), [],
|
||||
<Expression>[new ThisExpression()]);
|
||||
return;
|
||||
}
|
||||
|
@ -3566,7 +3566,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
final Member target = hierarchy
|
||||
.getDispatchTarget(enclosingClass.superclass, node.name, setter: true);
|
||||
if (target == null) {
|
||||
_genNoSuchMethodForSuperCall(node.name.name, temp, cp.addArgDesc(2), [],
|
||||
_genNoSuchMethodForSuperCall(node.name.text, temp, cp.addArgDesc(2), [],
|
||||
<Expression>[new ThisExpression(), node.value],
|
||||
storeLastArgumentToTemp: hasResult);
|
||||
} else {
|
||||
|
@ -3838,7 +3838,7 @@ class BytecodeGenerator extends RecursiveVisitor<Null> {
|
|||
// closure call needs one temporary, so withTemp lets us use this
|
||||
// VariableGet's temporary when visiting the initializer.
|
||||
assert(init is MethodInvocation &&
|
||||
init.name.name == "call" &&
|
||||
init.name.text == "call" &&
|
||||
init.arguments.positional.length == 0);
|
||||
locals.withTemp(
|
||||
init, locals.tempIndexInFrame(node), () => _generateNode(init));
|
||||
|
|
|
@ -306,6 +306,6 @@ bool _hasGenericCovariantParameters(Member target) {
|
|||
/// function type. Such invocations can omit argument type checks.
|
||||
bool isUncheckedClosureCall(MethodInvocation node,
|
||||
StaticTypeContext staticTypeContext, BytecodeOptions options) =>
|
||||
node.name.name == 'call' &&
|
||||
node.name.text == 'call' &&
|
||||
getStaticType(node.receiver, staticTypeContext) is FunctionType &&
|
||||
!options.avoidClosureCallInstructions;
|
||||
|
|
|
@ -1805,7 +1805,7 @@ class ObjectTable implements ObjectWriter, ObjectReader {
|
|||
}
|
||||
|
||||
String mangleMemberName(Member member, bool isGetter, bool isSetter) {
|
||||
final name = member.name.name;
|
||||
final name = member.name.text;
|
||||
if (isGetter || (member is Procedure && member.isGetter)) {
|
||||
return mangleGetterName(name);
|
||||
}
|
||||
|
@ -1862,7 +1862,7 @@ class ObjectTable implements ObjectWriter, ObjectReader {
|
|||
ObjectHandle getSelectorNameHandle(Name name,
|
||||
{bool isGetter: false, bool isSetter: false}) {
|
||||
return getNameHandle(
|
||||
name.library, mangleSelectorName(name.name, isGetter, isSetter));
|
||||
name.library, mangleSelectorName(name.text, isGetter, isSetter));
|
||||
}
|
||||
|
||||
ObjectHandle getTopLevelClassHandle(Library library) {
|
||||
|
|
|
@ -61,7 +61,7 @@ class RecognizedMethods {
|
|||
}
|
||||
|
||||
final Expression receiver = node.receiver;
|
||||
final String selector = node.name.name;
|
||||
final String selector = node.name.text;
|
||||
|
||||
switch (args.positional.length) {
|
||||
case 0:
|
||||
|
|
|
@ -67,7 +67,7 @@ class AnnotateWithStaticTypes extends RecursiveVisitor<Null> {
|
|||
|
||||
// TODO(34162): We don't need to save the type here for calls, just whether
|
||||
// or not it's a statically-checked call.
|
||||
if (node.name.name == 'call' ||
|
||||
if (node.name.text == 'call' ||
|
||||
hasGenericCovariantParameters(node.interfaceTarget)) {
|
||||
annotateWithType(node, node.receiver);
|
||||
}
|
||||
|
|
|
@ -203,9 +203,9 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
if (f is Field) {
|
||||
if (f.initializer is! NullLiteral) {
|
||||
diagnosticReporter.report(
|
||||
templateFfiFieldInitializer.withArguments(f.name.name),
|
||||
templateFfiFieldInitializer.withArguments(f.name.text),
|
||||
f.fileOffset,
|
||||
f.name.name.length,
|
||||
f.name.text.length,
|
||||
f.fileUri);
|
||||
}
|
||||
}
|
||||
|
@ -214,16 +214,16 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
if (_isPointerType(type)) {
|
||||
if (nativeTypeAnnos.length != 0) {
|
||||
diagnosticReporter.report(
|
||||
templateFfiFieldNoAnnotation.withArguments(f.name.name),
|
||||
templateFfiFieldNoAnnotation.withArguments(f.name.text),
|
||||
f.fileOffset,
|
||||
f.name.name.length,
|
||||
f.name.text.length,
|
||||
f.fileUri);
|
||||
}
|
||||
} else if (nativeTypeAnnos.length != 1) {
|
||||
diagnosticReporter.report(
|
||||
templateFfiFieldAnnotation.withArguments(f.name.name),
|
||||
templateFfiFieldAnnotation.withArguments(f.name.text),
|
||||
f.fileOffset,
|
||||
f.name.name.length,
|
||||
f.name.text.length,
|
||||
f.fileUri);
|
||||
} else {
|
||||
final DartType nativeType = InterfaceType(
|
||||
|
@ -258,7 +258,7 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
if (i is FieldInitializer) {
|
||||
toRemove.add(i);
|
||||
diagnosticReporter.report(
|
||||
templateFfiFieldInitializer.withArguments(i.field.name.name),
|
||||
templateFfiFieldInitializer.withArguments(i.field.name.text),
|
||||
i.fileOffset,
|
||||
1,
|
||||
i.location.file);
|
||||
|
@ -274,7 +274,7 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
// C.#fromPointer(Pointer<Void> address) : super.fromPointer(address);
|
||||
final VariableDeclaration pointer = new VariableDeclaration("#pointer");
|
||||
final name = Name("#fromPointer");
|
||||
final referenceFrom = indexedClass?.lookupConstructor(name.name);
|
||||
final referenceFrom = indexedClass?.lookupConstructor(name.text);
|
||||
final Constructor ctor = Constructor(
|
||||
FunctionNode(EmptyStatement(), positionalParameters: [pointer]),
|
||||
name: name,
|
||||
|
@ -461,7 +461,7 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
FunctionNode(getterStatement, returnType: field.type),
|
||||
fileUri: field.fileUri,
|
||||
reference:
|
||||
indexedClass?.lookupProcedureNotSetter(field.name.name)?.reference)
|
||||
indexedClass?.lookupProcedureNotSetter(field.name.text)?.reference)
|
||||
..fileOffset = field.fileOffset
|
||||
..isNonNullableByDefault = field.isNonNullableByDefault;
|
||||
|
||||
|
@ -479,7 +479,7 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
returnType: VoidType(), positionalParameters: [argument]),
|
||||
fileUri: field.fileUri,
|
||||
reference:
|
||||
indexedClass?.lookupProcedureSetter(field.name.name)?.reference)
|
||||
indexedClass?.lookupProcedureSetter(field.name.text)?.reference)
|
||||
..fileOffset = field.fileOffset
|
||||
..isNonNullableByDefault = field.isNonNullableByDefault;
|
||||
}
|
||||
|
@ -501,7 +501,7 @@ class _FfiDefinitionTransformer extends FfiTransformer {
|
|||
initializer: _runtimeBranchOnLayout(sizes),
|
||||
type: InterfaceType(intClass, Nullability.legacy),
|
||||
fileUri: struct.fileUri,
|
||||
reference: indexedClass?.lookupField(name.name)?.reference)
|
||||
reference: indexedClass?.lookupField(name.text)?.reference)
|
||||
..fileOffset = struct.fileOffset;
|
||||
_makeEntryPoint(sizeOf);
|
||||
struct.addMember(sizeOf);
|
||||
|
|
|
@ -342,7 +342,7 @@ class _FfiUseSiteTransformer extends FfiTransformer {
|
|||
isStatic: true,
|
||||
isFinal: true,
|
||||
fileUri: currentLibrary.fileUri,
|
||||
reference: currentLibraryIndex?.lookupField(name.name)?.reference)
|
||||
reference: currentLibraryIndex?.lookupField(name.text)?.reference)
|
||||
..fileOffset = node.fileOffset;
|
||||
currentLibrary.addMember(field);
|
||||
return StaticGet(field);
|
||||
|
@ -434,7 +434,7 @@ class _FfiUseSiteTransformer extends FfiTransformer {
|
|||
return;
|
||||
}
|
||||
diagnosticReporter.report(
|
||||
templateFfiNotStatic.withArguments(fromFunctionMethod.name.name),
|
||||
templateFfiNotStatic.withArguments(fromFunctionMethod.name.text),
|
||||
node.fileOffset,
|
||||
1,
|
||||
node.location.file);
|
||||
|
|
|
@ -81,7 +81,7 @@ class NoDynamicUsesAnnotator {
|
|||
}
|
||||
|
||||
visitField(Field node) {
|
||||
if (node.isStatic || node.name.name == 'call') {
|
||||
if (node.isStatic || node.name.text == 'call') {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -104,7 +104,7 @@ class NoDynamicUsesAnnotator {
|
|||
}
|
||||
|
||||
visitProcedure(Procedure node) {
|
||||
if (node.isStatic || node.name.name == 'call') {
|
||||
if (node.isStatic || node.name.text == 'call') {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -51,16 +51,16 @@ class ObfuscationProhibitionsVisitor extends RecursiveVisitor {
|
|||
|
||||
@override
|
||||
visitConstructor(Constructor ctor) {
|
||||
_addIfEntryPoint(ctor.annotations, ctor.name.name, ctor);
|
||||
_addIfEntryPoint(ctor.annotations, ctor.name.text, ctor);
|
||||
}
|
||||
|
||||
@override
|
||||
visitProcedure(Procedure proc) {
|
||||
_addIfEntryPoint(proc.annotations, proc.name.name, proc);
|
||||
_addIfEntryPoint(proc.annotations, proc.name.text, proc);
|
||||
}
|
||||
|
||||
@override
|
||||
visitField(Field field) {
|
||||
_addIfEntryPoint(field.annotations, field.name.name, field);
|
||||
_addIfEntryPoint(field.annotations, field.name.text, field);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@ InfoCollector removeUnusedProtoReferences(
|
|||
final biClass =
|
||||
protobufLib.classes.where((klass) => klass.name == 'BuilderInfo').single;
|
||||
final addMethod =
|
||||
biClass.members.singleWhere((Member member) => member.name.name == 'add');
|
||||
biClass.members.singleWhere((Member member) => member.name.text == 'add');
|
||||
|
||||
component.accept(collector);
|
||||
|
||||
|
@ -125,9 +125,9 @@ class _UnusedFieldMetadataPruner extends TreeVisitor<void> {
|
|||
_UnusedFieldMetadataPruner(this.tagNumberClass, this.builderInfoClass,
|
||||
this.addMethod, Set<Selector> dynamicSelectors, this.coreTypes, this.info)
|
||||
: tagNumberField = tagNumberClass.fields
|
||||
.firstWhere((f) => f.name.name == 'tagNumber')
|
||||
.firstWhere((f) => f.name.text == 'tagNumber')
|
||||
.reference {
|
||||
dynamicNames.addAll(dynamicSelectors.map((sel) => sel.target.name));
|
||||
dynamicNames.addAll(dynamicSelectors.map((sel) => sel.target.text));
|
||||
}
|
||||
|
||||
/// If a proto message field is never accessed (neither read nor written to),
|
||||
|
@ -140,7 +140,7 @@ class _UnusedFieldMetadataPruner extends TreeVisitor<void> {
|
|||
TransformationInfo info) {
|
||||
for (final klass in gmSubclasses) {
|
||||
final selectors = invokedMethods[klass] ?? Set<Selector>();
|
||||
final builderInfoFields = klass.fields.where((f) => f.name.name == '_i');
|
||||
final builderInfoFields = klass.fields.where((f) => f.name.text == '_i');
|
||||
if (builderInfoFields.isEmpty) {
|
||||
continue;
|
||||
}
|
||||
|
@ -152,7 +152,7 @@ class _UnusedFieldMetadataPruner extends TreeVisitor<void> {
|
|||
void _pruneBuilderInfoField(
|
||||
Field field, Set<Selector> selectors, Class gmSubclass) {
|
||||
names.clear();
|
||||
names.addAll(selectors.map((sel) => sel.target.name));
|
||||
names.addAll(selectors.map((sel) => sel.target.text));
|
||||
visitedClass = gmSubclass;
|
||||
_computeUsedTagNumbers(gmSubclass);
|
||||
field.initializer.accept(this);
|
||||
|
@ -166,7 +166,7 @@ class _UnusedFieldMetadataPruner extends TreeVisitor<void> {
|
|||
final constant = annotation.constant;
|
||||
if (constant is InstanceConstant &&
|
||||
constant.classReference == tagNumberClass.reference) {
|
||||
final name = procedure.name.name;
|
||||
final name = procedure.name.text;
|
||||
if (dynamicNames.contains(name) || names.contains(name)) {
|
||||
usedTagNumbers.add(
|
||||
(constant.fieldValues[tagNumberField] as IntConstant).value);
|
||||
|
@ -216,7 +216,7 @@ class _UnusedFieldMetadataPruner extends TreeVisitor<void> {
|
|||
void _changeCascadeEntry(Expression initializer) {
|
||||
if (initializer is MethodInvocation &&
|
||||
initializer.interfaceTarget?.enclosingClass == builderInfoClass &&
|
||||
fieldAddingMethods.contains(initializer.name.name)) {
|
||||
fieldAddingMethods.contains(initializer.name.text)) {
|
||||
final tagNumber =
|
||||
(initializer.arguments.positional[0] as IntLiteral).value;
|
||||
if (!usedTagNumbers.contains(tagNumber)) {
|
||||
|
|
|
@ -467,7 +467,7 @@ class _DispatchableInvocation extends _Invocation {
|
|||
}
|
||||
|
||||
// TODO(alexmarkov): handle closures more precisely
|
||||
if ((selector is DynamicSelector) && (selector.name.name == "call")) {
|
||||
if ((selector is DynamicSelector) && (selector.name.text == "call")) {
|
||||
tracePrint("Possible closure call, result is dynamic");
|
||||
result = new Type.nullableAny();
|
||||
}
|
||||
|
|
|
@ -81,7 +81,7 @@ class ProtobufHandler {
|
|||
return;
|
||||
}
|
||||
final messageClass = (_messageClasses[cls] ??= _MessageClass());
|
||||
if (member is Field && member.name.name == metadataFieldName) {
|
||||
if (member is Field && member.name.text == metadataFieldName) {
|
||||
// Update contents of static field initializer of metadata field (_i).
|
||||
// according to the used tag numbers.
|
||||
assertx(member.isStatic);
|
||||
|
@ -146,7 +146,7 @@ class ProtobufHandler {
|
|||
bool _isUnusedMetadata(_MessageClass cls, MethodInvocation node) {
|
||||
if (node.interfaceTarget != null &&
|
||||
node.interfaceTarget.enclosingClass == _builderInfoClass &&
|
||||
fieldAddingMethods.contains(node.name.name)) {
|
||||
fieldAddingMethods.contains(node.name.text)) {
|
||||
final tagNumber = (node.arguments.positional[0] as IntLiteral).value;
|
||||
return !cls._usedTags.contains(tagNumber);
|
||||
}
|
||||
|
|
|
@ -762,7 +762,7 @@ class SummaryCollector extends RecursiveVisitor<TypeExpr> {
|
|||
}
|
||||
}
|
||||
|
||||
if (member.name.name == '==') {
|
||||
if (member.name.text == '==') {
|
||||
// In addition to what is returned from the function body,
|
||||
// operator == performs implicit comparison with null
|
||||
// and returns bool.
|
||||
|
@ -1350,7 +1350,7 @@ class SummaryCollector extends RecursiveVisitor<TypeExpr> {
|
|||
return;
|
||||
} else if (node is MethodInvocation &&
|
||||
node.receiver is VariableGet &&
|
||||
node.name.name == '==') {
|
||||
node.name.text == '==') {
|
||||
assertx(node.arguments.positional.length == 1 &&
|
||||
node.arguments.types.isEmpty &&
|
||||
node.arguments.named.isEmpty);
|
||||
|
@ -1639,7 +1639,7 @@ class SummaryCollector extends RecursiveVisitor<TypeExpr> {
|
|||
final receiver = _visit(receiverNode);
|
||||
final args = _visitArguments(receiver, node.arguments);
|
||||
final target = node.interfaceTarget;
|
||||
if (receiverNode is ConstantExpression && node.name.name == '[]') {
|
||||
if (receiverNode is ConstantExpression && node.name.text == '[]') {
|
||||
Constant constant = receiverNode.constant;
|
||||
if (constant is ListConstant) {
|
||||
return _handleIndexingIntoListConstant(constant);
|
||||
|
@ -1647,11 +1647,11 @@ class SummaryCollector extends RecursiveVisitor<TypeExpr> {
|
|||
}
|
||||
TypeExpr result;
|
||||
if (target == null) {
|
||||
if (node.name.name == '==') {
|
||||
if (node.name.text == '==') {
|
||||
_makeCall(node, new DynamicSelector(CallKind.Method, node.name), args);
|
||||
return new Type.nullable(_boolType);
|
||||
}
|
||||
if (node.name.name == 'call') {
|
||||
if (node.name.text == 'call') {
|
||||
final recvType = _staticDartType(node.receiver);
|
||||
if ((recvType is FunctionType) ||
|
||||
(recvType == _environment.functionLegacyRawType)) {
|
||||
|
|
|
@ -322,7 +322,7 @@ bool isNullLiteral(Expression expr) =>
|
|||
(expr is ConstantExpression && expr.constant is NullConstant);
|
||||
|
||||
Expression getArgumentOfComparisonWithNull(MethodInvocation node) {
|
||||
if (node.name.name == '==') {
|
||||
if (node.name.text == '==') {
|
||||
final lhs = node.receiver;
|
||||
final rhs = node.arguments.positional.single;
|
||||
if (isNullLiteral(lhs)) {
|
||||
|
|
Loading…
Reference in a new issue