mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
m::ast::SelectStmt Struct Reference

A SQL select statement. More...

#include <AST.hpp>

Inheritance diagram for m::ast::SelectStmt:
[legend]
Collaboration diagram for m::ast::SelectStmt:
[legend]

Public Member Functions

 SelectStmt (std::unique_ptr< Clause > select, std::unique_ptr< Clause > from, std::unique_ptr< Clause > where, std::unique_ptr< Clause > group_by, std::unique_ptr< Clause > having, std::unique_ptr< Clause > order_by, std::unique_ptr< Clause > limit)
 
void accept (ASTCommandVisitor &v) override
 
void accept (ConstASTCommandVisitor &v) const override
 
void dot (std::ostream &out) const
 Writes a Graphivz dot representation of this Stmt to out.
 
void dump (std::ostream &out) const
 
void dump () const
 

Data Fields

std::unique_ptr< Clauseselect
 
std::unique_ptr< Clausefrom
 
std::unique_ptr< Clausewhere
 
std::unique_ptr< Clausegroup_by
 
std::unique_ptr< Clausehaving
 
std::unique_ptr< Clauseorder_by
 
std::unique_ptr< Clauselimit
 

Detailed Description

A SQL select statement.

Definition at line 935 of file AST.hpp.

Constructor & Destructor Documentation

◆ SelectStmt()

m::ast::SelectStmt::SelectStmt ( std::unique_ptr< Clause select,
std::unique_ptr< Clause from,
std::unique_ptr< Clause where,
std::unique_ptr< Clause group_by,
std::unique_ptr< Clause having,
std::unique_ptr< Clause order_by,
std::unique_ptr< Clause limit 
)
inline

Definition at line 945 of file AST.hpp.

Member Function Documentation

◆ accept() [1/2]

void m::ast::SelectStmt::accept ( ASTCommandVisitor v)
overridevirtual

Implements m::ast::Command.

◆ accept() [2/2]

void m::ast::SelectStmt::accept ( ConstASTCommandVisitor v) const
overridevirtual

Implements m::ast::Command.

◆ dot()

void Stmt::dot ( std::ostream &  out) const
inherited

Writes a Graphivz dot representation of this Stmt to out.

Used to render ASTs with Graphivz.

Definition at line 217 of file AST.cpp.

References m::ast::Stmt::dot().

Referenced by m::ast::Stmt::dot().

◆ dump() [1/2]

void Command::dump ( ) const
inherited

Definition at line 251 of file AST.cpp.

References m::ast::Command::dump().

Referenced by m::ast::Command::dump().

◆ dump() [2/2]

void Command::dump ( std::ostream &  out) const
inherited

Definition at line 245 of file AST.cpp.

Field Documentation

◆ from

std::unique_ptr<Clause> m::ast::SelectStmt::from

Definition at line 938 of file AST.hpp.

◆ group_by

std::unique_ptr<Clause> m::ast::SelectStmt::group_by

Definition at line 940 of file AST.hpp.

◆ having

std::unique_ptr<Clause> m::ast::SelectStmt::having

Definition at line 941 of file AST.hpp.

Referenced by get_aggregates().

◆ limit

std::unique_ptr<Clause> m::ast::SelectStmt::limit

Definition at line 943 of file AST.hpp.

◆ order_by

std::unique_ptr<Clause> m::ast::SelectStmt::order_by

Definition at line 942 of file AST.hpp.

Referenced by get_aggregates().

◆ select

std::unique_ptr<Clause> m::ast::SelectStmt::select

Definition at line 937 of file AST.hpp.

Referenced by get_aggregates().

◆ where

std::unique_ptr<Clause> m::ast::SelectStmt::where

Definition at line 939 of file AST.hpp.


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