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
|
//////////////////////////////////////////////////////////////////////////
//
// pgScript - PostgreSQL Tools
//
// Copyright (C) 2002 - 2014, The pgAdmin Development Team
// This software is released under the PostgreSQL Licence
//
//////////////////////////////////////////////////////////////////////////
#include "pgAdmin3.h"
#include "pgscript/statements/pgsProgram.h"
#include "pgscript/exceptions/pgsException.h"
#include "pgscript/statements/pgsStmtList.h"
pgsProgram::pgsProgram(pgsVarMap &vars) :
m_vars(vars)
{
}
pgsProgram::~pgsProgram()
{
}
void pgsProgram::dump()
{
dump(m_vars);
}
void pgsProgram::dump(const pgsVarMap &vars)
{
pgsVarMap::const_iterator it;
for (it = vars.begin(); it != vars.end(); it++)
{
wxLogMessage(wxString() << it->first << wxT(" -> ")
<< it->second->value());
}
}
void pgsProgram::eval(pgsStmtList *stmt_list)
{
wxLogScript(wxT("Entering program"));
try
{
stmt_list->eval(m_vars);
}
catch (const pgsException &)
{
}
catch (const std::exception &)
{
}
pgsStmtList::m_exception_thrown = false;
wxLogScript(wxT("Leaving program"));
}
|