summaryrefslogtreecommitdiff
path: root/src/binaryen-c.cpp
diff options
context:
space:
mode:
authordcode <dcode@dcode.io>2022-07-13 17:02:19 +0200
committerGitHub <noreply@github.com>2022-07-13 08:02:19 -0700
commit2ae1a61ae4d3b23e5f7feaf4c7daf0ce72ffbb92 (patch)
treea7bedd715048f386541417c9a9967174b638d2dd /src/binaryen-c.cpp
parent6ce01c552ef4ac2cdc44f74e6e55797ea512f539 (diff)
downloadbinaryen-2ae1a61ae4d3b23e5f7feaf4c7daf0ce72ffbb92.tar.gz
binaryen-2ae1a61ae4d3b23e5f7feaf4c7daf0ce72ffbb92.tar.bz2
binaryen-2ae1a61ae4d3b23e5f7feaf4c7daf0ce72ffbb92.zip
[C-API] Add type system C-API (#4790)
Diffstat (limited to 'src/binaryen-c.cpp')
-rw-r--r--src/binaryen-c.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp
index 8b4021c5b..0cc4bb115 100644
--- a/src/binaryen-c.cpp
+++ b/src/binaryen-c.cpp
@@ -184,6 +184,24 @@ BinaryenPackedType BinaryenPackedTypeInt16(void) {
return Field::PackedType::i16;
}
+// TypeSystem
+
+BinaryenTypeSystem BinaryenTypeSystemEquirecursive() {
+ return static_cast<BinaryenTypeSystem>(TypeSystem::Equirecursive);
+}
+BinaryenTypeSystem BinaryenTypeSystemNominal() {
+ return static_cast<BinaryenTypeSystem>(TypeSystem::Nominal);
+}
+BinaryenTypeSystem BinaryenTypeSystemIsorecursive() {
+ return static_cast<BinaryenTypeSystem>(TypeSystem::Isorecursive);
+}
+BinaryenTypeSystem BinaryenGetTypeSystem() {
+ return BinaryenTypeSystem(getTypeSystem());
+}
+void BinaryenSetTypeSystem(BinaryenTypeSystem typeSystem) {
+ setTypeSystem(TypeSystem(typeSystem));
+}
+
// Expression ids
BinaryenExpressionId BinaryenInvalidId(void) {