mirror of
https://github.com/levinsv/pgadmin3.git
synced 2026-05-15 14:15:49 -06:00
57 lines
1.1 KiB
C++
57 lines
1.1 KiB
C++
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// pgScript - PostgreSQL Tools
|
|
//
|
|
// Copyright (C) 2002 - 2016, The pgAdmin Development Team
|
|
// This software is released under the PostgreSQL Licence
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
#include "pgAdmin3.h"
|
|
#include "pgscript/expressions/pgsTrim.h"
|
|
|
|
#include "pgscript/objects/pgsString.h"
|
|
|
|
pgsTrim::pgsTrim(const pgsExpression *exp) :
|
|
pgsExpression(), m_exp(exp)
|
|
{
|
|
|
|
}
|
|
|
|
pgsTrim::~pgsTrim()
|
|
{
|
|
pdelete(m_exp);
|
|
}
|
|
|
|
pgsTrim::pgsTrim(const pgsTrim &that) :
|
|
pgsExpression(that)
|
|
{
|
|
m_exp = that.m_exp->clone();
|
|
}
|
|
|
|
pgsTrim &pgsTrim::operator=(const pgsTrim &that)
|
|
{
|
|
if (this != &that)
|
|
{
|
|
pgsExpression::operator=(that);
|
|
pdelete(m_exp);
|
|
m_exp = that.m_exp->clone();
|
|
}
|
|
return (*this);
|
|
}
|
|
|
|
pgsExpression *pgsTrim::clone() const
|
|
{
|
|
return pnew pgsTrim(*this);
|
|
}
|
|
|
|
wxString pgsTrim::value() const
|
|
{
|
|
return wxString() << wxT("TRIM(") << m_exp->value() << wxT(")");
|
|
}
|
|
|
|
pgsOperand pgsTrim::eval(pgsVarMap &vars) const
|
|
{
|
|
return pnew pgsString(m_exp->eval(vars)->value().Strip(wxString::both));
|
|
}
|