elna/source/result.cc

37 lines
931 B
C++

// This Source Code Form is subject to the terms of the Mozilla Public License
// v. 2.0. If a copy of the MPL was not distributed with this file, You can
// obtain one at http://mozilla.org/MPL/2.0/.
#include "elna/source/result.h"
namespace elna
{
namespace source
{
error::error(const char *path, const struct position position)
: position(position), path(path)
{
}
std::size_t error::line() const noexcept
{
return this->position.line;
}
std::size_t error::column() const noexcept
{
return this->position.column;
}
name_collision::name_collision(const std::string& name, const char *path,
const struct position current, const struct position previous)
: error(path, current), previous(previous), name(name)
{
}
std::string name_collision::what() const
{
return "Name '" + name + "' was already defined";
}
}
}