#pragma once #include #include #include #include #include #include "RuntimeManager.h" #include "SharedParent.h" #include "WorkletsCache.h" using namespace facebook; namespace reanimated { class FrozenObject : public jsi::HostObject { friend WorkletsCache; friend void extractMutables( jsi::Runtime &rt, std::shared_ptr sv, std::vector> &res); private: std::unordered_map> map; std::vector namesOrder; public: FrozenObject( jsi::Runtime &rt, const jsi::Object &object, RuntimeManager *runtimeManager); jsi::Object shallowClone(jsi::Runtime &rt); bool containsHostFunction = false; }; } // namespace reanimated