LCOV - code coverage report
Current view: top level - src/esys/repo/manifest - filebase_manifest.cpp (source / functions) Hit Total Coverage
Test: esysrepo_coverage.info Lines: 27 34 79.4 %
Date: 2026-08-12 14:26:50 Functions: 10 14 71.4 %

          Line data    Source code
       1             : /*!
       2             :  * \file esys/repo/manifest/filebase_manifest.cpp
       3             :  * \brief
       4             :  *
       5             :  * \cond
       6             :  * __legal_b__
       7             :  *
       8             :  * Copyright (c) 2020-2021 Michel Gillet
       9             :  * Distributed under the MIT License.
      10             :  * (See accompanying file LICENSE.txt or
      11             :  * copy at https://opensource.org/licenses/MIT)
      12             :  *
      13             :  * __legal_e__
      14             :  * \endcond
      15             :  *
      16             :  */
      17             : 
      18             : #include "esys/repo/esysrepo_prec.h"
      19             : #include "esys/repo/manifest/filebase.h"
      20             : 
      21             : namespace esys::repo::manifest
      22             : {
      23             : 
      24          78 : FileBase::FileBase() = default;
      25             : 
      26         156 : FileBase::~FileBase() = default;
      27             : 
      28          93 : void FileBase::set_data(std::shared_ptr<Manifest> data)
      29             : {
      30          93 :     m_data = data;
      31          93 : }
      32             : 
      33        1027 : std::shared_ptr<Manifest> FileBase::get_data() const
      34             : {
      35        1027 :     return m_data;
      36             : }
      37             : 
      38           0 : std::vector<std::shared_ptr<FileError>> &FileBase::get_errors()
      39             : {
      40           0 :     return m_errors;
      41             : }
      42             : 
      43           0 : const std::vector<std::shared_ptr<FileError>> &FileBase::get_errors() const
      44             : {
      45           0 :     return m_errors;
      46             : }
      47             : 
      48           0 : void FileBase::add_error(std::shared_ptr<FileError> error)
      49             : {
      50           0 :     m_errors.push_back(error);
      51           0 : }
      52             : 
      53           1 : void FileBase::add_error(int value, const std::string &msg)
      54             : {
      55           1 :     add_error(value, msg, -1);
      56           1 : }
      57             : 
      58           1 : void FileBase::add_error(int value, const std::string &msg, int line_number)
      59             : {
      60           1 :     auto error = std::make_shared<FileError>();
      61           1 :     error->set_value(value);
      62           1 :     error->set_msg(msg);
      63           1 :     error->set_line_number(line_number);
      64             : 
      65           1 :     m_errors.push_back(error);
      66           1 : }
      67             : 
      68          60 : void FileBase::set_parse_mode(ParseMode mode)
      69             : {
      70          60 :     m_parse_mode = mode;
      71          60 : }
      72             : 
      73          31 : ParseMode FileBase::get_parse_mode() const
      74             : {
      75          31 :     return m_parse_mode;
      76             : }
      77             : 
      78           2 : const std::string &FileBase::get_filename() const
      79             : {
      80           2 :     return m_filename;
      81             : }
      82             : 
      83          44 : void FileBase::set_filename(const std::string &filename)
      84             : {
      85          44 :     m_filename = filename;
      86          44 : }
      87             : 
      88             : } // namespace esys::repo::manifest

Generated by: LCOV version 1.14