// Copyright 2004-present Facebook. All Rights Reserved. #pragma once #include #include namespace facebook { namespace react { /* * Registry of particular `ComponentDescriptor`s. */ class ComponentDescriptorRegistry { public: void registerComponentDescriptor(SharedComponentDescriptor componentDescriptor); const SharedComponentDescriptor operator[](const SharedShadowNode &shadowNode); const SharedComponentDescriptor operator[](const ComponentName &componentName); private: std::unordered_map _registryByHandle; std::unordered_map _registryByName; }; } // namespace react } // namespace facebook