1 #pragma once 2 3 #include <jsi/jsi.h> 4 #include <memory> 5 #include <utility> 6 #include "SharedParent.h" 7 8 using namespace facebook; 9 10 namespace reanimated { 11 12 class MutableValueSetterProxy : public jsi::HostObject { 13 private: 14 friend MutableValue; 15 std::shared_ptr<MutableValue> mutableValue; 16 17 public: MutableValueSetterProxy(std::shared_ptr<MutableValue> mutableValue)18 explicit MutableValueSetterProxy(std::shared_ptr<MutableValue> mutableValue) 19 : mutableValue(std::move(mutableValue)) {} 20 void 21 set(jsi::Runtime &rt, const jsi::PropNameID &name, const jsi::Value &value); 22 jsi::Value get(jsi::Runtime &rt, const jsi::PropNameID &name); 23 }; 24 25 } // namespace reanimated 26