MLIR 24.0.0git
mlir::remark::detail::InFlightRemark Class Reference

InFlightRemark is a RAII class that holds a reference to a Remark instance and allows to build the remark using the << operator. More...

#include "mlir/IR/Remarks.h"

Public Member Functions

 InFlightRemark (std::unique_ptr< Remark > diag)
 InFlightRemark (RemarkEngine &eng, std::unique_ptr< Remark > diag)
 InFlightRemark ()=default
InFlightRemark & operator<< (const LazyTextBuild &l)
InFlightRemark & operator<< (const RelatedRemarkQuery &related)
template<typename T, typename = std::enable_if_t< !std::is_same_v<std::decay_t<T>, LazyTextBuild> && !std::is_same_v<std::decay_t<T>, RelatedRemarkQuery>>>
InFlightRemark & operator<< (T &&arg)
 operator bool () const
RemarkId getId () const
 Get this remark's unique ID (for linking from other remarks).
 ~InFlightRemark ()
 InFlightRemark (const InFlightRemark &)=delete
InFlightRemark & operator= (const InFlightRemark &)=delete
 InFlightRemark (InFlightRemark &&)=default
InFlightRemark & operator= (InFlightRemark &&)=default

Detailed Description

InFlightRemark is a RAII class that holds a reference to a Remark instance and allows to build the remark using the << operator.

The remark is emitted when the InFlightRemark instance is destroyed, which happens when the scope ends or when the InFlightRemark instance is moved. Similar to InFlightDiagnostic, but for remarks.

Definition at line 488 of file Remarks.h.

Constructor & Destructor Documentation

◆ InFlightRemark() [1/5]

mlir::remark::detail::InFlightRemark::InFlightRemark ( std::unique_ptr< Remark > diag)
inlineexplicit

◆ InFlightRemark() [2/5]

mlir::remark::detail::InFlightRemark::InFlightRemark ( RemarkEngine & eng,
std::unique_ptr< Remark > diag )
inline

Definition at line 493 of file Remarks.h.

◆ InFlightRemark() [3/5]

mlir::remark::detail::InFlightRemark::InFlightRemark ( )
default

◆ ~InFlightRemark()

InFlightRemark::~InFlightRemark ( )

Definition at line 197 of file Remarks.cpp.

◆ InFlightRemark() [4/5]

mlir::remark::detail::InFlightRemark::InFlightRemark ( const InFlightRemark & )
delete

References InFlightRemark().

◆ InFlightRemark() [5/5]

mlir::remark::detail::InFlightRemark::InFlightRemark ( InFlightRemark && )
default

References InFlightRemark().

Member Function Documentation

◆ getId()

RemarkId mlir::remark::detail::InFlightRemark::getId ( ) const
inline

Get this remark's unique ID (for linking from other remarks).

Definition at line 520 of file Remarks.h.

Referenced by mlir::remark::RemarkOpts::relatedTo().

◆ operator bool()

mlir::remark::detail::InFlightRemark::operator bool ( ) const
inlineexplicit

Definition at line 517 of file Remarks.h.

◆ operator<<() [1/3]

InFlightRemark & mlir::remark::detail::InFlightRemark::operator<< ( const LazyTextBuild & l)
inline

◆ operator<<() [2/3]

InFlightRemark & InFlightRemark::operator<< ( const RelatedRemarkQuery & related)

◆ operator<<() [3/3]

template<typename T, typename = std::enable_if_t< !std::is_same_v<std::decay_t<T>, LazyTextBuild> && !std::is_same_v<std::decay_t<T>, RelatedRemarkQuery>>>
InFlightRemark & mlir::remark::detail::InFlightRemark::operator<< ( T && arg)
inline

Definition at line 511 of file Remarks.h.

References InFlightRemark().

◆ operator=() [1/2]

InFlightRemark & mlir::remark::detail::InFlightRemark::operator= ( const InFlightRemark & )
delete

References InFlightRemark().

◆ operator=() [2/2]

InFlightRemark & mlir::remark::detail::InFlightRemark::operator= ( InFlightRemark && )
default

References InFlightRemark().


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