aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2017-02-09 04:37:26 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2017-02-09 04:37:26 -0500
commitc9d6debf9015b7853c3e061bbc64a555d85e2fcd (patch)
tree53341bc57ae9fbad2beb5b6c08d97a68bee0ec8e /SQLiteStudio3/coreSQLiteStudio/selectresolver.h
parentd5caba2b1f36dc3b92fa705a06097d0597fa2ddd (diff)
parentd9aa870e5d509cc7309ab82dd102a937ab58613a (diff)
Merge tag 'upstream/3.1.1+dfsg1'
Upstream version 3.1.1+dfsg1 # gpg: Signature made Thu 09 Feb 2017 04:37:24 AM EST # gpg: using RSA key 5001E1B09AA3744B # gpg: issuer "unit193@ubuntu.com" # gpg: Good signature from "Unit 193 <unit193@ubuntu.com>" [unknown] # gpg: aka "Unit 193 <unit193@gmail.com>" [unknown] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 8DB3 E586 865D 2B4A 2B18 5A5C 5001 E1B0 9AA3 744B
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/selectresolver.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/selectresolver.h20
1 files changed, 8 insertions, 12 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
index 1edfcb9..7640fc6 100644
--- a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
+++ b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
@@ -8,6 +8,7 @@
#include <QString>
#include <QHash>
#include <QStringList>
+#include <QStack>
class Db;
class SchemaResolver;
@@ -64,6 +65,9 @@ class API_EXPORT SelectResolver
*/
struct API_EXPORT Table
{
+ Table();
+ Table(const Table& other);
+
/**
* @brief Database name.
*
@@ -72,16 +76,18 @@ class API_EXPORT SelectResolver
QString database;
QString originalDatabase;
QString table;
- QString alias;
+ QString tableAlias;
+ QStringList oldTableAliases;
int flags = 0;
int operator==(const Table& other);
+ void pushTableAlias();
};
/**
* @brief Result column resolved by the resolver.
*/
- struct API_EXPORT Column
+ struct API_EXPORT Column : public Table
{
enum Type
{
@@ -92,22 +98,12 @@ class API_EXPORT SelectResolver
Type type;
/**
- * @brief Database name.
- *
- * Either sqlite name, like "main", or "temp", or an attach name.
- */
- QString database;
- QString originalDatabase;
- QString table;
-
- /**
* @brief Column name or expression.
*
* If a column is of OTHER type, then column member contains detokenized column expression.
*/
QString column;
QString alias;
- QString tableAlias;
QString displayName;
bool aliasDefinedInSubQuery = false;
int flags = 0;