aboutsummaryrefslogtreecommitdiffstats
path: root/src/VM.cpp
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-05-09 23:03:00 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-05-09 23:03:00 -0300
commitc375b1c69665ae7c16ffa3f17264386dfc257d8e (patch)
treec0a45b370512ae6d4b4a9500c244419567a357ef /src/VM.cpp
parent921de259fa441fb562aec701f0c8c14310f126e4 (diff)
downloadRNT-c375b1c69665ae7c16ffa3f17264386dfc257d8e.tar.gz
RNT-c375b1c69665ae7c16ffa3f17264386dfc257d8e.zip
FOL VM with cursor mocked storage
Diffstat (limited to 'src/VM.cpp')
-rw-r--r--src/VM.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/VM.cpp b/src/VM.cpp
index 4e69b8e..b5824d0 100644
--- a/src/VM.cpp
+++ b/src/VM.cpp
@@ -2,4 +2,19 @@
namespace nt
{
+ VM::VM(CursorManager& cursors) : cursors_(cursors) {}
+
+ Tuple* VM::Next(PlanNode* node)
+ {
+ if (node == nullptr)
+ return nullptr;
+
+ switch (node->op)
+ {
+ case PlanNode::Op::SCAN:
+ return cursors_.Next(node->scan_cursor);
+ }
+
+ return nullptr;
+ }
}