Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ using namespace callstack::polygen;

namespace facebook::react {
ReactNativePolygen::ReactNativePolygen(std::shared_ptr<CallInvoker> jsInvoker)
: NativePolygenCxxSpecJSI(std::move(jsInvoker))
: NativePolygenCxxSpec(std::move(jsInvoker))
, moduleRegistry_(generated::getModuleBag())
, moduleLoader_(moduleRegistry_) {
wasm_rt_init();
Expand Down
36 changes: 18 additions & 18 deletions packages/polygen/cpp/ReactNativePolygen/ReactNativePolygen.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,39 +48,39 @@ struct Bridging<NativeExportDescriptor> : public NativePolygenModuleExportDescri
template <>
struct Bridging<NativeModuleMetadata> : public NativePolygenInternalModuleMetadataBridging<NativeModuleMetadata> {};

class ReactNativePolygen : public NativePolygenCxxSpecJSI {
class ReactNativePolygen : public NativePolygenCxxSpec<ReactNativePolygen> {
public:
constexpr static auto kModuleName = "Polygen";

explicit ReactNativePolygen(std::shared_ptr<CallInvoker> jsInvoker);
virtual ~ReactNativePolygen();

bool copyNativeHandle(jsi::Runtime &rt, jsi::Object holder, jsi::Object source) override;
bool copyNativeHandle(jsi::Runtime &rt, jsi::Object holder, jsi::Object source);

// Modules
jsi::Object loadModule(jsi::Runtime &rt, jsi::Object holder, jsi::Object moduleData) override;
void unloadModule(jsi::Runtime &rt, jsi::Object moduleHolder) override;
jsi::Object getModuleMetadata(jsi::Runtime &rt, jsi::Object moduleHolder) override;
jsi::Object loadModule(jsi::Runtime &rt, jsi::Object holder, jsi::Object moduleData);
void unloadModule(jsi::Runtime &rt, jsi::Object moduleHolder);
jsi::Object getModuleMetadata(jsi::Runtime &rt, jsi::Object moduleHolder);

void createModuleInstance(jsi::Runtime &rt, jsi::Object instanceHolder, jsi::Object moduleHolder, jsi::Object importObject) override;
void destroyModuleInstance(jsi::Runtime &rt, jsi::Object instance) override;
void createModuleInstance(jsi::Runtime &rt, jsi::Object instanceHolder, jsi::Object moduleHolder, jsi::Object importObject);
void destroyModuleInstance(jsi::Runtime &rt, jsi::Object instance);

// Memories
void createMemory(jsi::Runtime &rt, jsi::Object holder, double initial, std::optional<double> maximum) override;
jsi::Object getMemoryBuffer(jsi::Runtime &rt, jsi::Object instance) override;
void growMemory(jsi::Runtime &rt, jsi::Object instance, double delta) override;
void createMemory(jsi::Runtime &rt, jsi::Object holder, double initial, std::optional<double> maximum);
jsi::Object getMemoryBuffer(jsi::Runtime &rt, jsi::Object instance);
void growMemory(jsi::Runtime &rt, jsi::Object instance, double delta);

// Globals
void createGlobal(jsi::Runtime &rt, jsi::Object holder, jsi::Object globalDescriptor, double initialValue) override;
double getGlobalValue(jsi::Runtime &rt, jsi::Object instance) override;
void setGlobalValue(jsi::Runtime &rt, jsi::Object instance, double newValue) override;
void createGlobal(jsi::Runtime &rt, jsi::Object holder, jsi::Object globalDescriptor, double initialValue);
double getGlobalValue(jsi::Runtime &rt, jsi::Object instance);
void setGlobalValue(jsi::Runtime &rt, jsi::Object instance, double newValue);

// Tables
void createTable(jsi::Runtime &rt, jsi::Object holder, jsi::Object tableDescriptor, std::optional<jsi::Object> initial) override;
void growTable(jsi::Runtime &rt, jsi::Object instance, double delta) override;
jsi::Object getTableElement(jsi::Runtime &rt, jsi::Object instance, double index) override;
void setTableElement(jsi::Runtime &rt, jsi::Object instance, double index, jsi::Object value) override;
double getTableSize(jsi::Runtime &rt, jsi::Object instance) override;
void createTable(jsi::Runtime &rt, jsi::Object holder, jsi::Object tableDescriptor, std::optional<jsi::Object> initial);
void growTable(jsi::Runtime &rt, jsi::Object instance, double delta);
jsi::Object getTableElement(jsi::Runtime &rt, jsi::Object instance, double index);
void setTableElement(jsi::Runtime &rt, jsi::Object instance, double index, jsi::Object value);
double getTableSize(jsi::Runtime &rt, jsi::Object instance);

private:
// Utility
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class Memory: public facebook::jsi::NativeState, public facebook::jsi::MutableBu

Memory(uint64_t initial, uint64_t maximum, bool is64 = false) {
this->memory_ = &this->ownedMemory_;
wasm_rt_allocate_memory(this->memory_, initial, maximum, is64);
wasm_rt_allocate_memory(this->memory_, initial, maximum, is64, 65536);
}

virtual ~Memory() {
Expand Down