summaryrefslogtreecommitdiff
path: root/src/binaryen-c.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/binaryen-c.cpp')
-rw-r--r--src/binaryen-c.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp
index ec70baef2..cd3806810 100644
--- a/src/binaryen-c.cpp
+++ b/src/binaryen-c.cpp
@@ -202,6 +202,9 @@ BinaryenType BinaryenTypeI31ref(void) {
BinaryenType BinaryenTypeDataref(void) {
return Type(HeapType::data, NonNullable).getID();
}
+BinaryenType BinaryenTypeArrayref(void) {
+ return Type(HeapType::array, Nullable).getID();
+}
BinaryenType BinaryenTypeStringref() {
return Type(HeapType::string, Nullable).getID();
}
@@ -284,6 +287,9 @@ BinaryenHeapType BinaryenHeapTypeI31() {
BinaryenHeapType BinaryenHeapTypeData() {
return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::data);
}
+BinaryenHeapType BinaryenHeapTypeArray() {
+ return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::array);
+}
BinaryenHeapType BinaryenHeapTypeString() {
return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::string);
}
@@ -299,6 +305,22 @@ BinaryenHeapType BinaryenHeapTypeStringviewIter() {
return static_cast<BinaryenHeapType>(
HeapType::BasicHeapType::stringview_iter);
}
+BinaryenHeapType BinaryenHeapTypeNone() {
+ return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::none);
+}
+BinaryenHeapType BinaryenHeapTypeNoext() {
+ return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::noext);
+}
+BinaryenHeapType BinaryenHeapTypeNofunc() {
+ return static_cast<BinaryenHeapType>(HeapType::BasicHeapType::nofunc);
+}
+
+bool BinaryenHeapTypeIsBottom(BinaryenHeapType heapType) {
+ return HeapType(heapType).isBottom();
+}
+BinaryenHeapType BinaryenHeapTypeGetBottom(BinaryenHeapType heapType) {
+ return static_cast<BinaryenHeapType>(HeapType(heapType).getBottom());
+}
BinaryenHeapType BinaryenTypeGetHeapType(BinaryenType type) {
return Type(type).getHeapType().getID();