Summary Files Commits Branches @commit @diff @stats
path: root / Year 2 / Implementation of Programming Languages / Transpiler / src / Value / Function / Funcall.h
diff options
context:
space:
mode:
diff --git a/Year 2/Implementation of Programming Languages/Transpiler/src/Value/Function/Funcall.h b/Year 2/Implementation of Programming Languages/Transpiler/src/Value/Function/Funcall.h
new file mode 100644
index 0000000..5afc51d
--- /dev/null
+++ b/Year 2/Implementation of Programming Languages/Transpiler/src/Value/Function/Funcall.h
@@ -0,0 +1,21 @@
+#ifndef VALUE_FUNCALL
+#define VALUE_FUNCALL
+
+#include <deque>
+#include "../Value.h"
+
+class Funcall : public Value {
+ std::string funName;
+ std::deque<Value*> args;
+public:
+ const std::string& get_funname() const;
+ const std::deque<Value*>& get_args() const;
+
+ std::string Visit(LLVMVisitor& visitor) const override;
+ T_Primitive RetType() const override;
+
+ Funcall(std::string funName, std::deque<Value*> args);
+ ~Funcall() override = default;
+};
+
+#endif