Files
react-native/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.h
T
Valentin Shergin 6589b64518 Codemod: Clang-format for all files in React/Fabric directory
Summary:
We are moving towards 100%-prettified files. That's another step when we apply Clang Format for `React/Fabric`.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D20112417

fbshipit-source-id: 020d818e5cb8e2f509c5276738c8f252f6817a56
2020-02-26 21:31:12 -08:00

44 lines
1.4 KiB
Objective-C

/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#import <React/RCTComponentViewDescriptor.h>
#import "RCTMountingTransactionObserverCoordinator.h"
#import <better/map.h>
#import <better/set.h>
#import <react/mounting/MountingTransactionMetadata.h>
class RCTMountingTransactionObserverCoordinator final {
public:
/*
* Registers (and unregisters) specified `componentViewDescriptor` in the
* registry of views that need to be notified. Does nothing if a particular
* `componentViewDescriptor` does not listen the events.
*/
void registerViewComponentDescriptor(
RCTComponentViewDescriptor const &componentViewDescriptor,
facebook::react::SurfaceId surfaceId);
void unregisterViewComponentDescriptor(
RCTComponentViewDescriptor const &componentViewDescriptor,
facebook::react::SurfaceId surfaceId);
/*
* To be called from `RCTMountingManager`.
*/
void notifyObserversMountingTransactionWillMount(
facebook::react::MountingTransactionMetadata const &metadata) const;
void notifyObserversMountingTransactionDidMount(
facebook::react::MountingTransactionMetadata const &metadata) const;
private:
facebook::better::map<
facebook::react::SurfaceId,
facebook::better::set<RCTComponentViewDescriptor>>
registry_;
};