Porytiles
Loading...
Searching...
No Matches
porytiles::DiagEngine Class Reference

Coordinates the generation and consumption of diagnostic messages. More...

#include <diagnostic_engine.hpp>

Public Member Functions

 DiagEngine ()
 
 DiagEngine (std::unique_ptr< DiagConsumer > consumer)
 
void EnableAllWarnings ()
 
void DisableAllWarnings ()
 
void UpgradeEnabledWarningsToErr ()
 
void EnableAtLevel (std::string_view diag, DiagLevel override)
 
void DisableAtLevel (std::string_view diag, DiagLevel override)
 
DiagLevel EnabledAt (std::string_view diag) const
 
std::uint64_t InFlightCountForLevel (DiagLevel level) const
 
std::uint64_t InFlightCountFor (std::string_view diag) const
 
template<typename... T>
void Report (std::string_view diag, T &&...args)
 
template<typename... T>
void ReportPartner (std::string_view diag, std::size_t partner_index, T &&...args)
 
template<typename T >
auto Style (const T &t, fmt::text_style ts) const
 
template<typename T >
auto Bold (const T &t) const
 
const DiagConsumerconsumer () const
 

Detailed Description

Coordinates the generation and consumption of diagnostic messages.

DiagEngine manages settings for enabling, disabling, treating warnings as errors, etc. It uses a DiagConsumer to process the generated diagnostics according to the engine client's preferences.

Definition at line 27 of file diagnostic_engine.hpp.

Constructor & Destructor Documentation

◆ DiagEngine() [1/2]

porytiles::DiagEngine::DiagEngine ( )
inline

Definition at line 29 of file diagnostic_engine.hpp.

◆ DiagEngine() [2/2]

porytiles::DiagEngine::DiagEngine ( std::unique_ptr< DiagConsumer consumer)
inlineexplicit

Definition at line 31 of file diagnostic_engine.hpp.

Member Function Documentation

◆ Bold()

template<typename T >
auto porytiles::DiagEngine::Bold ( const T &  t) const
inline

Definition at line 97 of file diagnostic_engine.hpp.

◆ consumer()

const DiagConsumer & porytiles::DiagEngine::consumer ( ) const

Definition at line 108 of file diagnostic_engine.cpp.

◆ DisableAllWarnings()

void porytiles::DiagEngine::DisableAllWarnings ( )

Definition at line 31 of file diagnostic_engine.cpp.

◆ DisableAtLevel()

void porytiles::DiagEngine::DisableAtLevel ( std::string_view  diag,
DiagLevel  override 
)

Definition at line 66 of file diagnostic_engine.cpp.

◆ EnableAllWarnings()

void porytiles::DiagEngine::EnableAllWarnings ( )

Definition at line 22 of file diagnostic_engine.cpp.

◆ EnableAtLevel()

void porytiles::DiagEngine::EnableAtLevel ( std::string_view  diag,
DiagLevel  override 
)

Definition at line 47 of file diagnostic_engine.cpp.

◆ EnabledAt()

DiagLevel porytiles::DiagEngine::EnabledAt ( std::string_view  diag) const

Definition at line 86 of file diagnostic_engine.cpp.

◆ InFlightCountFor()

std::uint64_t porytiles::DiagEngine::InFlightCountFor ( std::string_view  diag) const

Definition at line 100 of file diagnostic_engine.cpp.

◆ InFlightCountForLevel()

std::uint64_t porytiles::DiagEngine::InFlightCountForLevel ( DiagLevel  level) const

Definition at line 96 of file diagnostic_engine.cpp.

◆ Report()

template<typename... T>
void porytiles::DiagEngine::Report ( std::string_view  diag,
T &&...  args 
)
inline

Definition at line 52 of file diagnostic_engine.hpp.

◆ ReportPartner()

template<typename... T>
void porytiles::DiagEngine::ReportPartner ( std::string_view  diag,
std::size_t  partner_index,
T &&...  args 
)
inline

Definition at line 73 of file diagnostic_engine.hpp.

◆ Style()

template<typename T >
auto porytiles::DiagEngine::Style ( const T &  t,
fmt::text_style  ts 
) const
inline

Definition at line 92 of file diagnostic_engine.hpp.

◆ UpgradeEnabledWarningsToErr()

void porytiles::DiagEngine::UpgradeEnabledWarningsToErr ( )

Definition at line 35 of file diagnostic_engine.cpp.


The documentation for this class was generated from the following files: