@@ -18,21 +18,21 @@ class DynamicForwarders {
1818 final Translator translator;
1919 final w.ModuleBuilder callingModule;
2020
21- final Map <String , CallTarget > _getterForwarderOfName = {};
22- final Map <String , CallTarget > _setterForwarderOfName = {};
23- final Map <String , CallTarget > _methodForwarderOfName = {};
21+ final Map <Name , CallTarget > _getterForwarderOfName = {};
22+ final Map <Name , CallTarget > _setterForwarderOfName = {};
23+ final Map <Name , CallTarget > _methodForwarderOfName = {};
2424
2525 DynamicForwarders (this .translator, this .callingModule);
2626
27- CallTarget getDynamicGetForwarder (String memberName) =>
27+ CallTarget getDynamicGetForwarder (Name memberName) =>
2828 _getterForwarderOfName[memberName] ?? = _DynamicForwarderCallTarget (
2929 translator, _ForwarderKind .Getter , memberName, callingModule);
3030
31- CallTarget getDynamicSetForwarder (String memberName) =>
31+ CallTarget getDynamicSetForwarder (Name memberName) =>
3232 _setterForwarderOfName[memberName] ?? = _DynamicForwarderCallTarget (
3333 translator, _ForwarderKind .Setter , memberName, callingModule);
3434
35- CallTarget getDynamicInvocationForwarder (String memberName) {
35+ CallTarget getDynamicInvocationForwarder (Name memberName) {
3636 // Add Wasm function to the map before generating the forwarder code, to
3737 // allow recursive calls in the "call" forwarder.
3838 var forwarder = _methodForwarderOfName[memberName];
@@ -48,13 +48,13 @@ class DynamicForwarders {
4848class _DynamicForwarderCallTarget extends CallTarget {
4949 final Translator translator;
5050 final _ForwarderKind _kind;
51- final String memberName;
51+ final Name memberName;
5252 final w.ModuleBuilder callingModule;
5353
5454 _DynamicForwarderCallTarget (
5555 this .translator, this ._kind, this .memberName, this .callingModule)
5656 : assert (! translator.isDynamicSubmodule ||
57- (memberName == 'call' && _kind == _ForwarderKind .Method )),
57+ (memberName.text == 'call' && _kind == _ForwarderKind .Method )),
5858 super (_kind.functionType (translator));
5959
6060 @override
@@ -95,7 +95,7 @@ class _DynamicForwarderCallTarget extends CallTarget {
9595class _DynamicForwarderCodeGenerator extends CodeGenerator {
9696 final Translator translator;
9797 final _ForwarderKind _kind;
98- final String memberName;
98+ final Name memberName;
9999 final w.FunctionBuilder function;
100100
101101 _DynamicForwarderCodeGenerator (
@@ -409,7 +409,7 @@ class _DynamicForwarderCodeGenerator extends CodeGenerator {
409409 b.local_get (namedArgsLocal);
410410 translator.constants.instantiateConstant (
411411 b,
412- SymbolConstant (name, null ),
412+ translator.symbols. symbolForNamedParameter (name),
413413 translator.classInfo[translator.symbolClass]! .nonNullableType);
414414
415415 translator.callReference (
@@ -558,7 +558,7 @@ class _DynamicForwarderCodeGenerator extends CodeGenerator {
558558 // Value is not a closure
559559 final callForwarder = translator
560560 .getDynamicForwardersForModule (b.module)
561- .getDynamicInvocationForwarder (" call" )
561+ .getDynamicInvocationForwarder (Name ( ' call' ) )
562562 .function;
563563 b.local_get (receiverLocal);
564564 b.local_get (typeArgsLocal);
@@ -728,11 +728,13 @@ void generateDynamicFunctionCall(
728728void createInvocationObject (
729729 Translator translator,
730730 w.InstructionsBuilder b,
731- String memberName,
731+ Name memberName,
732732 w.Local typeArgsLocal,
733733 w.Local positionalArgsLocal,
734734 w.Local namedArgsLocal) {
735- translator.constants.instantiateConstant (b, SymbolConstant (memberName, null ),
735+ translator.constants.instantiateConstant (
736+ b,
737+ translator.symbols.methodSymbolFromName (memberName),
736738 translator.classInfo[translator.symbolClass]! .nonNullableType);
737739
738740 b.local_get (typeArgsLocal);
@@ -748,9 +750,11 @@ void createInvocationObject(
748750void createGetterInvocationObject (
749751 Translator translator,
750752 w.InstructionsBuilder b,
751- String memberName,
753+ Name memberName,
752754) {
753- translator.constants.instantiateConstant (b, SymbolConstant (memberName, null ),
755+ translator.constants.instantiateConstant (
756+ b,
757+ translator.symbols.getterSymbolFromName (memberName),
754758 translator.classInfo[translator.symbolClass]! .nonNullableType);
755759
756760 translator.callReference (translator.invocationGetterFactory.reference, b);
@@ -759,12 +763,12 @@ void createGetterInvocationObject(
759763void createSetterInvocationObject (
760764 Translator translator,
761765 w.InstructionsBuilder b,
762- String memberName,
766+ Name memberName,
763767 w.Local positionalArgLocal,
764768) {
765- memberName = '$ memberName =' ;
766-
767- translator.constants. instantiateConstant (b, SymbolConstant ( memberName, null ),
769+ translator.constants. instantiateConstant (
770+ b,
771+ translator.symbols. setterSymbolFromName ( memberName),
768772 translator.classInfo[translator.symbolClass]! .nonNullableType);
769773
770774 b.local_get (positionalArgLocal);
0 commit comments