bactria
0.0.1
The bactria library is a header-only C++14 library for profiling and tracing.
|
Go to the documentation of this file.
26 #include <type_traits>
33 template<
typename... TIncidents>
46 template<
typename TValue>
50 std::is_arithmetic<TValue>::value || std::is_same<TValue, std::string>::value,
51 "Incident value must be an arithmetic type or std::string");
53 template<
typename... TIncidents>
72 Incident(std::string key, TValue value) : m_key{std::move(key)}, m_value{value}
99 m_value = rhs.m_value;
111 Incident(
Incident&& other) noexcept : m_key{std::move(other.m_key)}, m_value{std::move(other.m_value)}
125 m_key = std::move(rhs.m_key);
126 m_value = std::move(rhs.m_value);
136 std::string m_key{
"BACTRIA_INCIDENT"};
152 template<
typename TValue>
155 using ValueType = std::remove_reference_t<TValue>;
The report class.
Definition: Incident.hpp:34
Incident(std::string key, TValue value)
Constructor.
Definition: Incident.hpp:72
auto operator=(Incident const &rhs) -> Incident &
Copy-assignment operator.
Definition: Incident.hpp:96
~Incident()=default
Destructor.
auto make_incident(std::string key, TValue value) -> Incident< std::remove_reference_t< TValue >>
Create an incident from a key and a value.
Definition: Incident.hpp:153
The incident type.
Definition: Incident.hpp:47
Incident()=default
Default constructor.
auto operator=(Incident &&rhs) noexcept -> Incident &
Move-assignment operator.
Definition: Incident.hpp:123
Incident(Incident &&other) noexcept
Move constructor.
Definition: Incident.hpp:111
Incident(Incident const &other)
Copy constructor.
Definition: Incident.hpp:84