PRISM
 v0.0.0
Loading...
Searching...
No Matches
InvalidInput.h
1//* This file is a part of PRISM: Plasma Reaction Input SysteM,
2//* A library for parcing chemical reaction networks for plasma chemistry
3//* https://github.com/NCSU-ComPS-Group/prism
4//*
5//* Licensed under MIT, please see LICENSE for details
6//* https://opensource.org/license/mit
7//*
8//* Copyright 2024, North Carolina State University
9//* ALL RIGHTS RESERVED
10//*
11#pragma once
12
13#include <stdexcept>
14#include "yaml-cpp/yaml.h"
15
16namespace prism
17{
19class InvalidSpecies : public std::exception
20{
21
22public:
27 InvalidSpecies(const std::string & name, const std::string & message);
28
30 const char * what() const noexcept override;
31
32private:
34 std::string _error;
35};
36
38class InvalidReaction : public std::exception
39{
40
41public:
46 InvalidReaction(const std::string & name, const std::string & message);
47
49 const char * what() const noexcept override;
50
51private:
53 std::string _error;
54};
55
57class InvalidInput : public std::exception
58{
59public:
64 InvalidInput(const std::string & message);
70 InvalidInput(const YAML::Node & node, const std::string & message);
72 const char * what() const noexcept override;
73
74private:
76 std::string _error;
77};
78
83void InvalidInputExit(const std::string & message);
90void InvalidInputExit(const YAML::Node node, const std::string & message);
99void
100InvalidInputExit(const YAML::Node node, const std::string & block, const std::string & message);
101}
const char * what() const noexcept override
custom what for the custom error message
Definition InvalidInput.C:55
InvalidInput(const std::string &message)
Constructor for just giving an error with no additional yaml input context.
InvalidInput(const YAML::Node &node, const std::string &message)
Constructor that will give additional context of the inputfile section that is invalid.
InvalidReaction(const std::string &name, const std::string &message)
Definition InvalidInput.C:30
const char * what() const noexcept override
custom what for the custom error message
Definition InvalidInput.C:36
const char * what() const noexcept override
custom what for the custom error message
Definition InvalidInput.C:25
InvalidSpecies(const std::string &name, const std::string &message)
Definition InvalidInput.C:19