mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
m::DropIndex Struct Reference

#include <DatabaseCommand.hpp>

Inheritance diagram for m::DropIndex:
[legend]
Collaboration diagram for m::DropIndex:
[legend]

Public Member Functions

 DropIndex (std::vector< ThreadSafePooledString > index_names)
 
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>
Tast ()
 
template<typename T = ast::Command>
requires std::derived_from<T, ast::Command>
const Tast () const
 
std::unique_ptr< ast::Commandast (std::unique_ptr< ast::Command > new_ast)
 
Scheduler::Transactiontransaction ()
 
void transaction (Scheduler::Transaction *t)
 

Private Attributes

std::vector< ThreadSafePooledStringindex_names_
 
std::unique_ptr< ast::Commandast_
 

‍the AST of the command; optional


 
Scheduler::Transactiont_
 

‍the transaction this command belongs to


 

Detailed Description

Definition at line 293 of file DatabaseCommand.hpp.

Constructor & Destructor Documentation

◆ DropIndex()

m::DropIndex::DropIndex ( std::vector< ThreadSafePooledString index_names)
inline

Definition at line 299 of file DatabaseCommand.hpp.

References index_names_, and M_notnull.

Member Function Documentation

◆ accept() [1/2]

void m::DropIndex::accept ( ConstDatabaseCommandVisitor &  v) const
overridevirtual

Implements m::DatabaseCommand.

◆ accept() [2/2]

void m::DropIndex::accept ( DatabaseCommandVisitor &  v)
overridevirtual

Implements m::DatabaseCommand.

◆ ast() [1/3]

template<typename T = ast::Command>
requires std::derived_from<T, ast::Command>
T & m::DatabaseCommand::ast ( )
inlineinherited

Definition at line 39 of file DatabaseCommand.hpp.

References m::DatabaseCommand::ast_, and m::T().

Referenced by m::QueryDatabase::execute().

◆ ast() [2/3]

template<typename T = ast::Command>
requires std::derived_from<T, ast::Command>
const T & m::DatabaseCommand::ast ( ) const
inlineinherited

Definition at line 42 of file DatabaseCommand.hpp.

References m::DatabaseCommand::ast_, and m::T().

◆ ast() [3/3]

std::unique_ptr< ast::Command > m::DatabaseCommand::ast ( std::unique_ptr< ast::Command new_ast)
inlineinherited

Definition at line 44 of file DatabaseCommand.hpp.

References m::DatabaseCommand::ast_.

◆ execute()

void DropIndex::execute ( Diagnostic diag)
overridevirtual

Executes the command.

Implements m::DatabaseCommand.

Definition at line 331 of file DatabaseCommand.cpp.

References m::Diagnostic::err(), m::Catalog::Get(), m::Options::Get(), index_names_, and m::Diagnostic::out().

◆ transaction() [1/2]

Scheduler::Transaction * m::DatabaseCommand::transaction ( )
inlineinherited

◆ transaction() [2/2]

void m::DatabaseCommand::transaction ( Scheduler::Transaction t)
inlineinherited

Definition at line 49 of file DatabaseCommand.hpp.

References m::DatabaseCommand::t_.

Field Documentation

◆ ast_

std::unique_ptr<ast::Command> m::DatabaseCommand::ast_
privateinherited

‍the AST of the command; optional

Definition at line 24 of file DatabaseCommand.hpp.

Referenced by m::DatabaseCommand::ast().

◆ index_names_

std::vector<ThreadSafePooledString> m::DropIndex::index_names_
private

Definition at line 296 of file DatabaseCommand.hpp.

Referenced by DropIndex(), and execute().

◆ t_

Scheduler::Transaction* m::DatabaseCommand::t_
privateinherited

‍the transaction this command belongs to

Definition at line 26 of file DatabaseCommand.hpp.

Referenced by m::DatabaseCommand::transaction().


The documentation for this struct was generated from the following files: