diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/binaryen-c.cpp | 22 | ||||
-rw-r--r-- | src/binaryen-c.h | 9 |
2 files changed, 31 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(); diff --git a/src/binaryen-c.h b/src/binaryen-c.h index 9cc282721..ea3988cae 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -105,6 +105,7 @@ BINARYEN_API BinaryenType BinaryenTypeAnyref(void); BINARYEN_API BinaryenType BinaryenTypeEqref(void); BINARYEN_API BinaryenType BinaryenTypeI31ref(void); BINARYEN_API BinaryenType BinaryenTypeDataref(void); +BINARYEN_API BinaryenType BinaryenTypeArrayref(void); BINARYEN_API BinaryenType BinaryenTypeStringref(void); BINARYEN_API BinaryenType BinaryenTypeStringviewWTF8(void); BINARYEN_API BinaryenType BinaryenTypeStringviewWTF16(void); @@ -146,10 +147,18 @@ BINARYEN_API BinaryenHeapType BinaryenHeapTypeAny(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeEq(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeI31(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeData(void); +BINARYEN_API BinaryenHeapType BinaryenHeapTypeArray(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeString(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeStringviewWTF8(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeStringviewWTF16(void); BINARYEN_API BinaryenHeapType BinaryenHeapTypeStringviewIter(void); +BINARYEN_API BinaryenHeapType BinaryenHeapTypeNone(void); +BINARYEN_API BinaryenHeapType BinaryenHeapTypeNoext(void); +BINARYEN_API BinaryenHeapType BinaryenHeapTypeNofunc(void); + +BINARYEN_API bool BinaryenHeapTypeIsBottom(BinaryenHeapType heapType); +BINARYEN_API BinaryenHeapType +BinaryenHeapTypeGetBottom(BinaryenHeapType heapType); BINARYEN_API BinaryenHeapType BinaryenTypeGetHeapType(BinaryenType type); BINARYEN_API bool BinaryenTypeIsNullable(BinaryenType type); |