mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Backend.hpp
Go to the documentation of this file.
1#pragma once
2
4#include <mutable/mutable-config.hpp>
5#include <memory>
6#include <string>
7#include <unordered_map>
8
9
10namespace m {
11
12struct Operator;
13
16struct M_EXPORT Backend
17{
18 virtual ~Backend() { }
19
21 virtual void register_operators(PhysicalOptimizer &phys_opt) const = 0;
22
24 virtual void execute(const MatchBase &plan) const = 0;
25};
26
27}
‍mutable namespace
Definition: Backend.hpp:10
Defines the interface of all execution Backends.
Definition: Backend.hpp:17
virtual void register_operators(PhysicalOptimizer &phys_opt) const =0
Registers all physical operators of this Backend in phys_opt.
virtual void execute(const MatchBase &plan) const =0
Executes the already computed physical covering represented by plan using this Backend.
virtual ~Backend()
Definition: Backend.hpp:18
An Operator represents an operation in a query plan.
Definition: Operator.hpp:45
The physical optimizer interface.