mimic++
v10.0.1
Toggle main menu visibility
Loading...
Searching...
No Matches
SequenceReport.hpp
Go to the documentation of this file.
1
// Copyright Dominic (DNKpp) Koepke 2024 - 2025.
2
// Distributed under the Boost Software License, Version 1.0.
3
// (See accompanying file LICENSE_1_0.txt or copy at
4
// https://www.boost.org/LICENSE_1_0.txt)
5
6
#ifndef MIMICPP_REPORTING_SEQUENCE_REPORT_HPP
7
#define MIMICPP_REPORTING_SEQUENCE_REPORT_HPP
8
9
#pragma once
10
11
#include "
mimic++/Fwd.hpp
"
12
#include "
mimic++/config/Config.hpp
"
13
#include "
mimic++/utilities/SourceLocation.hpp
"
14
15
MIMICPP_DETAIL_MODULE_EXPORT
namespace
mimicpp::reporting
16
{
22
23
class
SequenceReport
24
{
25
public
:
26
sequence::Tag
tag
{};
27
util::SourceLocation
from
{};
28
std::optional<util::SourceLocation>
headFrom
{};
29
30
[[nodiscard]]
31
friend
bool
operator==
(
SequenceReport
const
&,
SequenceReport
const
&) =
default
;
32
};
33
34
template
<
typename
Id, auto priorityStrategy>
35
[[nodiscard]]
36
constexpr
SequenceReport
make_sequence_report
(sequence::detail::BasicSequence<Id, priorityStrategy>
const
& seq)
37
{
38
return
SequenceReport
{seq.tag(), seq.from(), seq.head_from()};
39
}
40
41
template
<
typename
Id, auto priorityStrategy>
42
[[nodiscard]]
43
constexpr
SequenceReport
make_sequence_report
(sequence::detail::BasicSequenceInterface<Id, priorityStrategy>
const
& seq)
44
{
45
return
SequenceReport
{seq.tag(), seq.from(), seq.head_from()};
46
}
47
51
}
52
53
#endif
Config.hpp
MIMICPP_DETAIL_MODULE_EXPORT
#define MIMICPP_DETAIL_MODULE_EXPORT
Definition
Config.hpp:19
Fwd.hpp
SourceLocation.hpp
mimicpp::reporting::SequenceReport
Definition
SequenceReport.hpp:24
mimicpp::reporting::SequenceReport::tag
sequence::Tag tag
Definition
SequenceReport.hpp:26
mimicpp::reporting::SequenceReport::headFrom
std::optional< util::SourceLocation > headFrom
Definition
SequenceReport.hpp:28
mimicpp::reporting::SequenceReport::from
util::SourceLocation from
Definition
SequenceReport.hpp:27
mimicpp::reporting::SequenceReport::operator==
friend bool operator==(SequenceReport const &, SequenceReport const &)=default
mimicpp::util::SourceLocation
A thin wrapper around general source-location info.
Definition
SourceLocation.hpp:33
mimicpp::reporting::make_sequence_report
constexpr SequenceReport make_sequence_report(sequence::detail::BasicSequence< Id, priorityStrategy > const &seq)
Definition
SequenceReport.hpp:36
mimicpp::reporting
Definition
BasicReporter.hpp:26
mimicpp::sequence::Tag
Tag
Definition
Fwd.hpp:408
mimic++
reporting
SequenceReport.hpp
Generated on
for mimic++ by
1.18.0