aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/parser/ast/sqlitevacuum.h
blob: db9af95e94e806c49667900cfa83577bc3c14d05 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef SQLITEVACUUM_H
#define SQLITEVACUUM_H

#include "sqlitequery.h"

#include <QString>

class SqliteExpr;

class API_EXPORT SqliteVacuum : public SqliteQuery
{
    public:
        SqliteVacuum();
        SqliteVacuum(const SqliteVacuum& other);
        SqliteVacuum(SqliteExpr* expr);
        SqliteVacuum(const QString &name, SqliteExpr* expr);

        SqliteStatement* clone();

        QString database;
        SqliteExpr* expr = nullptr;

    protected:
        QStringList getDatabasesInStatement();
        TokenList getDatabaseTokensInStatement();
        QList<FullObject> getFullObjectsInStatement();
        TokenList rebuildTokensFromContents();
};

typedef QSharedPointer<SqliteVacuum> SqliteVacuumPtr;

#endif // SQLITEVACUUM_H