![]() |
mutable
A Database System for Research and Fast Prototyping
|
Run a query against the selected database. More...
#include <DatabaseCommand.hpp>
Public Member Functions | |
void | accept (DatabaseCommandVisitor &v) override |
void | accept (ConstDatabaseCommandVisitor &v) const override |
void | execute (Diagnostic &diag) override |
Executes the command. | |
template<typename T = ast::Command> requires std::derived_from<T, ast::Command> | |
T & | ast () |
template<typename T = ast::Command> requires std::derived_from<T, ast::Command> | |
const T & | ast () const |
std::unique_ptr< ast::Command > | ast (std::unique_ptr< ast::Command > new_ast) |
Scheduler::Transaction * | transaction () |
void | transaction (Scheduler::Transaction *t) |
Private Attributes | |
std::unique_ptr< QueryGraph > | graph_ |
std::unique_ptr< Consumer > | logical_plan_ |
std::unique_ptr< MatchBase > | physical_plan_ |
std::unique_ptr< ast::Command > | ast_ |
| |
Scheduler::Transaction * | t_ |
| |
Run a query against the selected database.
Definition at line 115 of file DatabaseCommand.hpp.
|
overridevirtual |
Implements m::DatabaseCommand.
|
overridevirtual |
Implements m::DatabaseCommand.
|
inlineinherited |
Definition at line 39 of file DatabaseCommand.hpp.
References m::DatabaseCommand::ast_, and m::T().
Referenced by execute().
|
inlineinherited |
Definition at line 42 of file DatabaseCommand.hpp.
References m::DatabaseCommand::ast_, and m::T().
|
inlineinherited |
Definition at line 44 of file DatabaseCommand.hpp.
References m::DatabaseCommand::ast_.
|
overridevirtual |
Executes the command.
Implements m::DatabaseCommand.
Definition at line 53 of file DatabaseCommand.cpp.
References m::DatabaseCommand::ast(), m::QueryGraph::Build(), m::Catalog::cost_function(), m::PhysicalOptimizerImpl< PhysicalPlanTable >::cover(), m::Catalog::create_backend(), m::Timer::create_timing(), m::Options::dryrun, m::PhysicalOptimizerImpl< PhysicalPlanTable >::extract_plan(), m::Catalog::Get(), m::Options::Get(), m::Options::graph, graph_, m::Options::graphdot, logical_plan_, m::Catalog::logical_post_optimizations(), M_insist, M_TIME_EXPR, m::Diagnostic::out(), physical_plan_, m::Catalog::physical_post_optimizations(), m::Options::physplan, m::Catalog::plan_enumerator(), m::Catalog::pre_optimizations(), m::DotTool::show(), m::DotTool::stream(), m::Catalog::timer(), and m::DatabaseCommand::transaction().
|
inlineinherited |
Definition at line 48 of file DatabaseCommand.hpp.
References m::DatabaseCommand::t_.
Referenced by execute(), m::InsertRecords::execute(), and m::ImportDSV::execute().
|
inlineinherited |
Definition at line 49 of file DatabaseCommand.hpp.
References m::DatabaseCommand::t_.
|
privateinherited |
the AST of the command; optional
Definition at line 24 of file DatabaseCommand.hpp.
Referenced by m::DatabaseCommand::ast().
|
private |
Definition at line 118 of file DatabaseCommand.hpp.
Referenced by execute().
|
private |
Definition at line 119 of file DatabaseCommand.hpp.
Referenced by execute().
|
private |
Definition at line 120 of file DatabaseCommand.hpp.
Referenced by execute().
|
privateinherited |
the transaction this command belongs to
Definition at line 26 of file DatabaseCommand.hpp.
Referenced by m::DatabaseCommand::transaction().