Summary Files Commits Branches @commit @diff @stats
path: root / Year 2 / Implementation of Programming Languages / Transpiler / src / LLVMVisitor / Register.cpp
diff options
context:
space:
mode:
Commit4d359b9c16b01847b26d6827e137f680c65969f2 (patch)
Author
 Syndamia <kamen@syndamia.com>
2023-02-07 20:06:31 +0200
Committer
 Syndamia <kamen@syndamia.com>
2023-02-07 20:06:31 +0200
Files2af4cf7c92237f1a55550cd8866e8bcb0b51b87c /Year 2/Implementation of Programming Languages/Transpiler/src/LLVMVisitor/Register.cpp
uni-projects-4d359b9c16b01847b26d6827e137f680c65969f2.tar
uni-projects-4d359b9c16b01847b26d6827e137f680c65969f2.tar.gz
uni-projects-4d359b9c16b01847b26d6827e137f680c65969f2.zip
Parent38c4a1355cb573d47c3e26f83ca8e916b62c80d1 (diff)
[IPL/T] Overhauled how functions are handled, added list type
diff --git a/Year 2/Implementation of Programming Languages/Transpiler/src/LLVMVisitor/Register.cpp b/Year 2/Implementation of Programming Languages/Transpiler/src/LLVMVisitor/Register.cpp
index 873d4e0..5d125a7 100644
--- a/Year 2/Implementation of Programming Languages/Transpiler/src/LLVMVisitor/Register.cpp
+++ b/Year 2/Implementation of Programming Languages/Transpiler/src/LLVMVisitor/Register.cpp
@@ -13,6 +13,14 @@ Register Register::operator++(int) {
return old;
}
-std::string Register::operator*() {
+std::string Register::operator*() const {
return prepend + std::to_string(counter);
}
+
+void Register::reset() {
+ counter = 0;
+}
+
+std::ostream& operator<<(std::ostream& ostr, const Register& reg) {
+ return ostr << *reg;
+}