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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
#include "expectedtoken.h"
bool ExpectedToken::needsWrapping() const
{
switch (type)
{
case ExpectedToken::COLUMN:
case ExpectedToken::TABLE:
case ExpectedToken::INDEX:
case ExpectedToken::TRIGGER:
case ExpectedToken::VIEW:
case ExpectedToken::DATABASE:
case ExpectedToken::OTHER:
case ExpectedToken::COLLATION:
return true;
case ExpectedToken::KEYWORD:
case ExpectedToken::FUNCTION:
case ExpectedToken::OPERATOR:
case ExpectedToken::STRING:
case ExpectedToken::NUMBER:
case ExpectedToken::BLOB:
case ExpectedToken::PRAGMA:
case ExpectedToken::NO_VALUE:
return false;
}
return false;
}
int ExpectedToken::operator==(const ExpectedToken& other)
{
return type == other.type && value == other.value && contextInfo == other.contextInfo &&
label == other.label && prefix == other.prefix;
}
QString ExpectedToken::toString() const
{
return QString("%4. %1 : %2 (ctx: %3) [label: %5]").arg(value).arg(type).arg(contextInfo).arg(prefix).arg(label);
}
ExpectedTokenPtr::ExpectedTokenPtr() :
QSharedPointer<ExpectedToken>()
{
}
ExpectedTokenPtr::ExpectedTokenPtr(ExpectedToken* ptr) :
QSharedPointer<ExpectedToken>(ptr)
{
}
ExpectedTokenPtr::ExpectedTokenPtr(const QSharedPointer<ExpectedToken>& other) :
QSharedPointer<ExpectedToken>(other)
{
}
ExpectedTokenPtr::ExpectedTokenPtr(const QWeakPointer<ExpectedToken>& other) :
QSharedPointer<ExpectedToken>(other)
{
}
int operator==(const ExpectedTokenPtr& ptr1, const ExpectedTokenPtr& ptr2)
{
return *ptr1.data() == *ptr2.data();
}
int qHash(const ExpectedToken& token)
{
return token.type ^ qHash(token.value + "/" + token.contextInfo + "/" + token.label + "/" + token.prefix);
}
int qHash(const ExpectedTokenPtr& ptr)
{
return qHash(*ptr.data());
}
|