wip: memory leaks
This commit is contained in:
parent
bca26e7066
commit
3bdf6f294d
|
|
@ -43,7 +43,6 @@ public:
|
|||
DatabaseModel(const QString &name = QString::null);
|
||||
DatabaseModel(const DatabaseModel &other);
|
||||
DatabaseModel(const QJsonObject &json);
|
||||
// DatabaseModel(DatabaseModel &model);
|
||||
|
||||
TableModel *tableByName(QString tableName) const;
|
||||
TableModel *tableByClassName(QString className) const;
|
||||
|
|
|
|||
|
|
@ -84,6 +84,9 @@ PhraseData::~PhraseData()
|
|||
LOG("");
|
||||
}
|
||||
|
||||
AbstractFieldPhrase::AbstractFieldPhrase(PhraseData *d) : data(d)
|
||||
{ }
|
||||
|
||||
AbstractFieldPhrase::AbstractFieldPhrase(const char *className, const char *fieldName)
|
||||
:data(new PhraseData(className, fieldName))
|
||||
{
|
||||
|
|
@ -92,10 +95,16 @@ AbstractFieldPhrase::AbstractFieldPhrase(const char *className, const char *fiel
|
|||
|
||||
AbstractFieldPhrase::AbstractFieldPhrase(const AbstractFieldPhrase &other)
|
||||
{
|
||||
qDebug() <<"4444444444444444";
|
||||
qDebug() <<"Copy ctor"<<other.data->toString();
|
||||
data = new PhraseData(other.data);
|
||||
}
|
||||
|
||||
AbstractFieldPhrase::AbstractFieldPhrase(AbstractFieldPhrase &&other)
|
||||
{
|
||||
data = other.data;
|
||||
other.data = 0;
|
||||
}
|
||||
|
||||
AbstractFieldPhrase::~AbstractFieldPhrase()
|
||||
{
|
||||
if (data) {
|
||||
|
|
@ -148,13 +157,11 @@ AbstractFieldPhraseOperatorField(<=, PhraseData::LessEqual)
|
|||
AbstractFieldPhraseOperatorField(> , PhraseData::Greater)
|
||||
AbstractFieldPhraseOperatorField(>=, PhraseData::GreaterEqual)
|
||||
|
||||
AbstractFieldPhrase AbstractFieldPhrase::operator !()
|
||||
AbstractFieldPhrase &AbstractFieldPhrase::operator !()
|
||||
{
|
||||
//TODO: classname and s
|
||||
AbstractFieldPhrase f(data->className, data->fieldName);
|
||||
f.data = new PhraseData(data);
|
||||
f.data->isNot = !data->isNot;
|
||||
return f;
|
||||
AbstractFieldPhrase *f = new AbstractFieldPhrase(new PhraseData(data));
|
||||
f->data->isNot = !data->isNot;
|
||||
return *f;
|
||||
}
|
||||
|
||||
AssignmentPhrase AbstractFieldPhrase::operator =(const QVariant &other)
|
||||
|
|
|
|||
|
|
@ -168,8 +168,8 @@ class ConditionalPhrase
|
|||
{
|
||||
public:
|
||||
PhraseData *data;
|
||||
QSharedPointer<PhraseData> leftDataPointer;
|
||||
QSharedPointer<PhraseData> rightDataPointer;
|
||||
// QSharedPointer<PhraseData> leftDataPointer;
|
||||
// QSharedPointer<PhraseData> rightDataPointer;
|
||||
ConditionalPhrase();
|
||||
ConditionalPhrase(const ConditionalPhrase &other);
|
||||
#ifdef Q_COMPILER_RVALUE_REFS
|
||||
|
|
@ -212,8 +212,10 @@ class AbstractFieldPhrase
|
|||
{
|
||||
public:
|
||||
PhraseData *data;
|
||||
explicit AbstractFieldPhrase(PhraseData *d);
|
||||
AbstractFieldPhrase(const char *className, const char *fieldName);
|
||||
AbstractFieldPhrase(const AbstractFieldPhrase &other);
|
||||
AbstractFieldPhrase(AbstractFieldPhrase &&other);
|
||||
|
||||
virtual ~AbstractFieldPhrase();
|
||||
|
||||
|
|
@ -251,7 +253,7 @@ public:
|
|||
ConditionalPhrase operator <=(const AbstractFieldPhrase &other);
|
||||
ConditionalPhrase operator >=(const AbstractFieldPhrase &other);
|
||||
|
||||
AbstractFieldPhrase operator !();
|
||||
AbstractFieldPhrase &operator !();
|
||||
AssignmentPhrase operator =(const QVariant &other);
|
||||
AssignmentPhrase operator <<(const QVariant &other);
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue