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

A wrapper for linking remarks by query - searches the engine's registry at stream time and links to all matching remarks. 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
InFlightRemarkoperator<< (const LazyTextBuild &l)
template<typename T, typename = std::enable_if_t< !std::is_same_v<std::decay_t<T>, LazyTextBuild>>>
InFlightRemarkoperator<< (T &&arg)
 operator bool () const
RemarkId getId () const
 Get this remark's unique ID (for linking from other remarks).
 ~InFlightRemark ()
 InFlightRemark (const InFlightRemark &)=delete
InFlightRemarkoperator= (const InFlightRemark &)=delete
 InFlightRemark (InFlightRemark &&)=default
InFlightRemarkoperator= (InFlightRemark &&)=default

Detailed Description

A wrapper for linking remarks by query - searches the engine's registry at stream time and links to all matching remarks.

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 402 of file Remarks.h.

Constructor & Destructor Documentation

◆ InFlightRemark() [1/5]

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

Definition at line 404 of file Remarks.h.

References diag().

Referenced by InFlightRemark(), InFlightRemark(), operator<<(), operator<<(), operator=(), and operator=().

◆ InFlightRemark() [2/5]

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

Definition at line 407 of file Remarks.h.

References diag().

◆ InFlightRemark() [3/5]

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

◆ ~InFlightRemark()

InFlightRemark::~InFlightRemark ( )

Definition at line 165 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 430 of file Remarks.h.

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

◆ operator bool()

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

Definition at line 427 of file Remarks.h.

◆ operator<<() [1/2]

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

◆ operator<<() [2/2]

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

Definition at line 421 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: