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.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp
index 66c4341e3..d7f23e259 100644
--- a/src/binaryen-c.cpp
+++ b/src/binaryen-c.cpp
@@ -3280,7 +3280,8 @@ BinaryenFunctionRef BinaryenAddFunction(BinaryenModuleRef module,
BinaryenExpressionRef body) {
auto* ret = new Function;
ret->setExplicitName(name);
- ret->sig = Signature(Type(params), Type(results));
+ // TODO: Take a HeapType rather than params and results.
+ ret->type = Signature(Type(params), Type(results));
for (BinaryenIndex i = 0; i < numVarTypes; i++) {
ret->vars.push_back(Type(varTypes[i]));
}
@@ -3380,7 +3381,8 @@ void BinaryenAddFunctionImport(BinaryenModuleRef module,
ret->name = internalName;
ret->module = externalModuleName;
ret->base = externalBaseName;
- ret->sig = Signature(Type(params), Type(results));
+ // TODO: Take a HeapType rather than params and results.
+ ret->type = Signature(Type(params), Type(results));
((Module*)module)->addFunction(ret);
}
void BinaryenAddTableImport(BinaryenModuleRef module,
@@ -3547,7 +3549,7 @@ BinaryenAddActiveElementSegment(BinaryenModuleRef module,
Fatal() << "invalid function '" << funcNames[i] << "'.";
}
segment->data.push_back(
- Builder(*(Module*)module).makeRefFunc(funcNames[i], func->sig));
+ Builder(*(Module*)module).makeRefFunc(funcNames[i], func->type));
}
return ((Module*)module)->addElementSegment(std::move(segment));
}
@@ -3564,7 +3566,7 @@ BinaryenAddPassiveElementSegment(BinaryenModuleRef module,
Fatal() << "invalid function '" << funcNames[i] << "'.";
}
segment->data.push_back(
- Builder(*(Module*)module).makeRefFunc(funcNames[i], func->sig));
+ Builder(*(Module*)module).makeRefFunc(funcNames[i], func->type));
}
return ((Module*)module)->addElementSegment(std::move(segment));
}
@@ -4006,14 +4008,16 @@ const char* BinaryenModuleGetDebugInfoFileName(BinaryenModuleRef module,
// ========== Function Operations ==========
//
+// TODO: add BinaryenFunctionGetType
+
const char* BinaryenFunctionGetName(BinaryenFunctionRef func) {
return ((Function*)func)->name.c_str();
}
BinaryenType BinaryenFunctionGetParams(BinaryenFunctionRef func) {
- return ((Function*)func)->sig.params.getID();
+ return ((Function*)func)->getParams().getID();
}
BinaryenType BinaryenFunctionGetResults(BinaryenFunctionRef func) {
- return ((Function*)func)->sig.results.getID();
+ return ((Function*)func)->getResults().getID();
}
BinaryenIndex BinaryenFunctionGetNumVars(BinaryenFunctionRef func) {
return ((Function*)func)->vars.size();