Do not use $ in identifiers for event emitters. (#49792)

Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49792

This removes the `$` from the `event` and `payload` identifier inside codegen.
This is causing the `-Wdollar-in-identifier-extension` warning to fire.

As I'm looking into enabling `-Wall -Werror` for React Common, this should be addressed as well.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D70500543

fbshipit-source-id: c593680961b1b98561c3985f92ade5d6ba448ac9
This commit is contained in:
Nicola Corti
2025-03-03 16:47:46 -08:00
committed by Facebook GitHub Bot
parent a724b27301
commit c4c3d3bfbe
3 changed files with 117 additions and 117 deletions
@@ -149,22 +149,22 @@ Object {
namespace facebook::react {
void EventNestedObjectPropsNativeComponentViewEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"change\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
void EventNestedObjectPropsNativeComponentViewEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"change\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
{
auto location = jsi::Object(runtime);
{
auto source = jsi::Object(runtime);
source.setProperty(runtime, \\"url\\", $event.location.source.url);
source.setProperty(runtime, \\"url\\", event.location.source.url);
location.setProperty(runtime, \\"source\\", source);
}
location.setProperty(runtime, \\"x\\", $event.location.x);
location.setProperty(runtime, \\"y\\", $event.location.y);
location.setProperty(runtime, \\"x\\", event.location.x);
location.setProperty(runtime, \\"y\\", event.location.y);
auto arrayOfObjects = jsi::Array(runtime, $event.location.arrayOfObjects.size());
auto arrayOfObjects = jsi::Array(runtime, event.location.arrayOfObjects.size());
size_t arrayOfObjectsIndex = 0;
for (auto arrayOfObjectsValue : $event.location.arrayOfObjects) {
for (auto arrayOfObjectsValue : event.location.arrayOfObjects) {
auto arrayOfObjectsObject = jsi::Object(runtime);
{
auto value = jsi::Object(runtime);
@@ -175,9 +175,9 @@ void EventNestedObjectPropsNativeComponentViewEventEmitter::onChange(OnChange $e
}
location.setProperty(runtime, \\"arrayOfObjects\\", arrayOfObjects);
$payload.setProperty(runtime, \\"location\\", location);
payload.setProperty(runtime, \\"location\\", location);
}
return $payload;
return payload;
});
}
@@ -203,59 +203,59 @@ Object {
namespace facebook::react {
void EventPropsNativeComponentViewEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"paperDirectName\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
$payload.setProperty(runtime, \\"source\\", $event.source);
$payload.setProperty(runtime, \\"progress\\", $event.progress);
$payload.setProperty(runtime, \\"scale\\", $event.scale);
return $payload;
void EventPropsNativeComponentViewEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"paperDirectName\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
payload.setProperty(runtime, \\"source\\", event.source);
payload.setProperty(runtime, \\"progress\\", event.progress);
payload.setProperty(runtime, \\"scale\\", event.scale);
return payload;
});
}
void EventPropsNativeComponentViewEventEmitter::onEventDirect(OnEventDirect $event) const {
dispatchEvent(\\"eventDirect\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void EventPropsNativeComponentViewEventEmitter::onEventDirect(OnEventDirect event) const {
dispatchEvent(\\"eventDirect\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
void EventPropsNativeComponentViewEventEmitter::onEventDirectWithPaperName(OnEventDirectWithPaperName $event) const {
dispatchEvent(\\"paperDirectName\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void EventPropsNativeComponentViewEventEmitter::onEventDirectWithPaperName(OnEventDirectWithPaperName event) const {
dispatchEvent(\\"paperDirectName\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
void EventPropsNativeComponentViewEventEmitter::onOrientationChange(OnOrientationChange $event) const {
dispatchEvent(\\"paperBubblingName\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"orientation\\", toString($event.orientation));
return $payload;
void EventPropsNativeComponentViewEventEmitter::onOrientationChange(OnOrientationChange event) const {
dispatchEvent(\\"paperBubblingName\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"orientation\\", toString(event.orientation));
return payload;
});
}
void EventPropsNativeComponentViewEventEmitter::onEnd(OnEnd $event) const {
void EventPropsNativeComponentViewEventEmitter::onEnd(OnEnd event) const {
dispatchEvent(\\"end\\", [](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
auto payload = jsi::Object(runtime);
return $payload;
return payload;
});
}
void EventPropsNativeComponentViewEventEmitter::onEventBubblingWithPaperName(OnEventBubblingWithPaperName $event) const {
void EventPropsNativeComponentViewEventEmitter::onEventBubblingWithPaperName(OnEventBubblingWithPaperName event) const {
dispatchEvent(\\"paperBubblingName\\", [](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
auto payload = jsi::Object(runtime);
return $payload;
return payload;
});
}
@@ -347,11 +347,11 @@ Object {
namespace facebook::react {
void InterfaceOnlyNativeComponentViewEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"change\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void InterfaceOnlyNativeComponentViewEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"change\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
@@ -68,11 +68,11 @@ const ComponentTemplate = ({
dispatchEventName: string,
implementation: string,
}) => {
const capture = implementation.includes('$event')
? '$event=std::move($event)'
const capture = implementation.includes('event')
? 'event=std::move(event)'
: '';
return `
void ${className}EventEmitter::${eventName}(${structName} $event) const {
void ${className}EventEmitter::${eventName}(${structName} event) const {
dispatchEvent("${dispatchEventName}", [${capture}](jsi::Runtime &runtime) {
${implementation}
});
@@ -103,7 +103,7 @@ function generateSetter(
valueMapper: string => string = value => value,
) {
const eventChain = usingEvent
? `$event.${[...propertyParts, propertyName].join('.')}`
? `event.${[...propertyParts, propertyName].join('.')}`
: [...propertyParts, propertyName].join('.');
return `${variableName}.setProperty(runtime, "${propertyName}", ${valueMapper(
eventChain,
@@ -156,7 +156,7 @@ function generateArraySetter(
usingEvent: boolean,
): string {
const eventChain = usingEvent
? `$event.${[...propertyParts, propertyName].join('.')}`
? `event.${[...propertyParts, propertyName].join('.')}`
: [...propertyParts, propertyName].join('.');
const indexVar = `${propertyName}Index`;
const innerLoopVar = `${propertyName}Value`;
@@ -376,14 +376,14 @@ function generateEvent(
if (event.typeAnnotation.argument) {
const implementation = `
auto $payload = jsi::Object(runtime);
auto payload = jsi::Object(runtime);
${generateSetters(
'$payload',
'payload',
event.typeAnnotation.argument.properties,
[],
extraIncludes,
)}
return $payload;
return payload;
`.trim();
if (!event.name.startsWith('on')) {
@@ -193,21 +193,21 @@ Map {
namespace facebook::react {
void EventsNestedObjectNativeComponentEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"change\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
void EventsNestedObjectNativeComponentEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"change\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
{
auto location = jsi::Object(runtime);
{
auto source = jsi::Object(runtime);
source.setProperty(runtime, \\"url\\", $event.location.source.url);
source.setProperty(runtime, \\"url\\", event.location.source.url);
location.setProperty(runtime, \\"source\\", source);
}
location.setProperty(runtime, \\"x\\", $event.location.x);
location.setProperty(runtime, \\"y\\", $event.location.y);
$payload.setProperty(runtime, \\"location\\", location);
location.setProperty(runtime, \\"x\\", event.location.x);
location.setProperty(runtime, \\"y\\", event.location.y);
payload.setProperty(runtime, \\"location\\", location);
}
return $payload;
return payload;
});
}
@@ -233,41 +233,41 @@ Map {
namespace facebook::react {
void EventsNativeComponentEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"change\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
$payload.setProperty(runtime, \\"source\\", $event.source);
$payload.setProperty(runtime, \\"progress\\", $event.progress);
$payload.setProperty(runtime, \\"scale\\", $event.scale);
return $payload;
void EventsNativeComponentEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"change\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
payload.setProperty(runtime, \\"source\\", event.source);
payload.setProperty(runtime, \\"progress\\", event.progress);
payload.setProperty(runtime, \\"scale\\", event.scale);
return payload;
});
}
void EventsNativeComponentEventEmitter::onArrayEventType(OnArrayEventType $event) const {
dispatchEvent(\\"arrayEventType\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
void EventsNativeComponentEventEmitter::onArrayEventType(OnArrayEventType event) const {
dispatchEvent(\\"arrayEventType\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
auto bool_array_event_prop = jsi::Array(runtime, $event.bool_array_event_prop.size());
auto bool_array_event_prop = jsi::Array(runtime, event.bool_array_event_prop.size());
size_t bool_array_event_propIndex = 0;
for (auto bool_array_event_propValue : $event.bool_array_event_prop) {
for (auto bool_array_event_propValue : event.bool_array_event_prop) {
bool_array_event_prop.setValueAtIndex(runtime, bool_array_event_propIndex++, (bool)bool_array_event_propValue);
}
$payload.setProperty(runtime, \\"bool_array_event_prop\\", bool_array_event_prop);
payload.setProperty(runtime, \\"bool_array_event_prop\\", bool_array_event_prop);
auto string_enum_event_prop = jsi::Array(runtime, $event.string_enum_event_prop.size());
auto string_enum_event_prop = jsi::Array(runtime, event.string_enum_event_prop.size());
size_t string_enum_event_propIndex = 0;
for (auto string_enum_event_propValue : $event.string_enum_event_prop) {
for (auto string_enum_event_propValue : event.string_enum_event_prop) {
string_enum_event_prop.setValueAtIndex(runtime, string_enum_event_propIndex++, toString(string_enum_event_propValue));
}
$payload.setProperty(runtime, \\"string_enum_event_prop\\", string_enum_event_prop);
payload.setProperty(runtime, \\"string_enum_event_prop\\", string_enum_event_prop);
auto array_array_event_prop = jsi::Array(runtime, $event.array_array_event_prop.size());
auto array_array_event_prop = jsi::Array(runtime, event.array_array_event_prop.size());
size_t array_array_event_propIndex = 0;
for (auto array_array_event_propValue : $event.array_array_event_prop) {
for (auto array_array_event_propValue : event.array_array_event_prop) {
auto array_array_event_propArray = jsi::Array(runtime, array_array_event_propValue.size());
size_t array_array_event_propIndexInternal = 0;
for (auto array_array_event_propValueInternal : array_array_event_propValue) {
@@ -275,12 +275,12 @@ void EventsNativeComponentEventEmitter::onArrayEventType(OnArrayEventType $event
}
array_array_event_prop.setValueAtIndex(runtime, array_array_event_propIndex++, array_array_event_propArray);
}
$payload.setProperty(runtime, \\"array_array_event_prop\\", array_array_event_prop);
payload.setProperty(runtime, \\"array_array_event_prop\\", array_array_event_prop);
auto array_object_event_prop = jsi::Array(runtime, $event.array_object_event_prop.size());
auto array_object_event_prop = jsi::Array(runtime, event.array_object_event_prop.size());
size_t array_object_event_propIndex = 0;
for (auto array_object_event_propValue : $event.array_object_event_prop) {
for (auto array_object_event_propValue : event.array_object_event_prop) {
auto array_object_event_propObject = jsi::Object(runtime);
array_object_event_propObject.setProperty(runtime, \\"lat\\", array_object_event_propValue.lat);
array_object_event_propObject.setProperty(runtime, \\"lon\\", array_object_event_propValue.lon);
@@ -294,35 +294,35 @@ array_object_event_propObject.setProperty(runtime, \\"lon\\", array_object_event
array_object_event_prop.setValueAtIndex(runtime, array_object_event_propIndex++, array_object_event_propObject);
}
$payload.setProperty(runtime, \\"array_object_event_prop\\", array_object_event_prop);
payload.setProperty(runtime, \\"array_object_event_prop\\", array_object_event_prop);
auto array_mixed_event_prop = jsi::Array(runtime, $event.array_mixed_event_prop.size());
auto array_mixed_event_prop = jsi::Array(runtime, event.array_mixed_event_prop.size());
size_t array_mixed_event_propIndex = 0;
for (auto array_mixed_event_propValue : $event.array_mixed_event_prop) {
for (auto array_mixed_event_propValue : event.array_mixed_event_prop) {
array_mixed_event_prop.setValueAtIndex(runtime, array_mixed_event_propIndex++, jsi::valueFromDynamic(runtime, array_mixed_event_propValue));
}
$payload.setProperty(runtime, \\"array_mixed_event_prop\\", array_mixed_event_prop);
payload.setProperty(runtime, \\"array_mixed_event_prop\\", array_mixed_event_prop);
return $payload;
return payload;
});
}
void EventsNativeComponentEventEmitter::onEventDirect(OnEventDirect $event) const {
dispatchEvent(\\"eventDirect\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void EventsNativeComponentEventEmitter::onEventDirect(OnEventDirect event) const {
dispatchEvent(\\"eventDirect\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
void EventsNativeComponentEventEmitter::onOrientationChange(OnOrientationChange $event) const {
dispatchEvent(\\"orientationChange\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"orientation\\", toString($event.orientation));
return $payload;
void EventsNativeComponentEventEmitter::onOrientationChange(OnOrientationChange event) const {
dispatchEvent(\\"orientationChange\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"orientation\\", toString(event.orientation));
return payload;
});
}
@@ -330,11 +330,11 @@ void EventsNativeComponentEventEmitter::onEnd() const {
dispatchEvent(\\"end\\");
}
void EventsNativeComponentEventEmitter::onEventWithMixedPropAttribute(OnEventWithMixedPropAttribute $event) const {
dispatchEvent(\\"eventWithMixedPropAttribute\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", jsi::valueFromDynamic(runtime, $event.value));
return $payload;
void EventsNativeComponentEventEmitter::onEventWithMixedPropAttribute(OnEventWithMixedPropAttribute event) const {
dispatchEvent(\\"eventWithMixedPropAttribute\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", jsi::valueFromDynamic(runtime, event.value));
return payload;
});
}
@@ -360,20 +360,20 @@ Map {
namespace facebook::react {
void InterfaceOnlyComponentEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"paperChange\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void InterfaceOnlyComponentEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"paperChange\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
void InterfaceOnlyComponentEventEmitter::onDirectChange(OnDirectChange $event) const {
dispatchEvent(\\"paperDirectChange\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void InterfaceOnlyComponentEventEmitter::onDirectChange(OnDirectChange event) const {
dispatchEvent(\\"paperDirectChange\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}
@@ -576,11 +576,11 @@ Map {
namespace facebook::react {
void InterfaceOnlyComponentEventEmitter::onChange(OnChange $event) const {
dispatchEvent(\\"change\\", [$event=std::move($event)](jsi::Runtime &runtime) {
auto $payload = jsi::Object(runtime);
$payload.setProperty(runtime, \\"value\\", $event.value);
return $payload;
void InterfaceOnlyComponentEventEmitter::onChange(OnChange event) const {
dispatchEvent(\\"change\\", [event=std::move(event)](jsi::Runtime &runtime) {
auto payload = jsi::Object(runtime);
payload.setProperty(runtime, \\"value\\", event.value);
return payload;
});
}