Loading...
Searching...
No Matches
errReport.hpp
Go to the documentation of this file.
1
2#pragma once
3
4#include "core/common.hpp"
5#include "core/type/ntype.hpp"
7
8namespace by {
9
24 class _nout errReport: public instance, public dumpable {
25 BY(CLASS(errReport, instance))
26
27 public:
28 errReport();
29 errReport(nbool isNoisy);
30
31 public:
32 nbool operator==(const me& rhs) const;
33 nbool operator!=(const me& rhs) const;
34 const baseErr& operator[](nidx n) const;
35 operator nbool() const;
36
37 public:
38 nbool inErr() const;
39
44 nbool inErr(errCode code) const;
45 nbool inErr(errCode code, nidx since) const;
46 nbool inWarn() const;
47
52 nbool inWarn(errCode code) const;
53 nbool inWarn(errCode code, nidx since) const;
54 nbool in(errLv::level type) const;
55 nbool in(errLv::level type, errCode code) const;
56 nbool in(errLv::level type, errCode code, nidx since) const;
57
58 const baseErr* get(nidx n) const;
59
60 ncnt len() const;
61
62 virtual const baseErr& add(const baseErr& new1);
63 const baseErr* add(const baseErr* it) BY_SIDE_FUNC(it, &add(*it), nullptr);
64 void add(const me& rhs);
65
66 std::vector<tstr<baseErr>>::const_iterator begin() const;
67 std::vector<tstr<baseErr>>::const_iterator last() const;
68 std::vector<tstr<baseErr>>::const_iterator end() const;
69
70 void log(nidx since) const;
71 void log() const;
72 virtual void dump(nidx since) const;
73 void dump() const override;
74
75 void rel();
76
77 nbool isNoisy() const;
78 virtual me& setNoisy(nbool isNoisy);
79
80 private:
81 void _noise(const baseErr& new1);
82
83 private:
84 std::vector<tstr<baseErr>> _errs;
85
90 nbool _isNoisy;
91 };
92
97 class _nout dummyErrReport: public errReport {
99
100 public:
102
103 public:
104 const baseErr& add(const baseErr& new1) override;
105
106 super& setNoisy(nbool isNoisy) override;
107
108 static me singleton;
109 };
110} // namespace by
Base class for error hierarchy.
Definition baseErr.hpp:48
Dummy error reporter that discards all errors.
Definition errReport.hpp:97
Error report collector.
Definition errReport.hpp:24
nbool inWarn(errCode code) const
nbool inErr(errCode code) const
Definition tnarr.hpp:9
to Top