Files
react-native/ReactCommon/react/renderer/mounting/StubView.h
T
Samuel Susla 5af6a44de3 Back out "Back out "[RN] Fabric: Strengthening StubView mutating validation""
Summary:
Changelog: [internal]

Original commit changeset: b6109a45f153

Reviewed By: JoshuaGross

Differential Revision: D25020497

fbshipit-source-id: c52d5ad03dd1049ac66ecb2d82b5018a05bb4f19
2020-11-19 11:57:55 -08:00

60 lines
1.4 KiB
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.
*/
#pragma once
#include <memory>
#include <vector>
#include <react/renderer/core/LayoutMetrics.h>
#include <react/renderer/core/State.h>
#include <react/renderer/debug/debugStringConvertibleUtils.h>
#include <react/renderer/mounting/ShadowView.h>
namespace facebook {
namespace react {
class StubView final {
public:
using Shared = std::shared_ptr<StubView>;
StubView() = default;
StubView(StubView const &stubView) = default;
operator ShadowView() const;
void update(ShadowView const &shadowView);
ComponentName componentName;
ComponentHandle componentHandle;
Tag tag;
SharedProps props;
SharedEventEmitter eventEmitter;
LayoutMetrics layoutMetrics;
State::Shared state;
std::vector<StubView::Shared> children;
};
bool operator==(StubView const &lhs, StubView const &rhs);
bool operator!=(StubView const &lhs, StubView const &rhs);
#if RN_DEBUG_STRING_CONVERTIBLE
std::string getDebugName(StubView const &stubView);
std::vector<DebugStringConvertibleObject> getDebugProps(
StubView const &stubView,
DebugStringConvertibleOptions options);
std::vector<StubView> getDebugChildren(
StubView const &stubView,
DebugStringConvertibleOptions options);
#endif
} // namespace react
} // namespace facebook