MLIR 22.0.0git
mlir::python::PyDiagnostic Class Reference

Python class mirroring the C MlirDiagnostic struct. More...

#include "Bindings/Python/IRModule.h"

Classes

struct  DiagnosticInfo
 Materialized diagnostic information. More...

Public Member Functions

 PyDiagnostic (MlirDiagnostic diagnostic)
void invalidate ()
bool isValid ()
MlirDiagnosticSeverity getSeverity ()
PyLocation getLocation ()
nanobind::str getMessage ()
nanobind::tuple getNotes ()
DiagnosticInfo getInfo ()

Detailed Description

Python class mirroring the C MlirDiagnostic struct.

Note that these structs are only valid for the duration of a diagnostic callback and attempting to access them outside of that will raise an exception. This applies to nested diagnostics (in the notes) as well.

Definition at line 330 of file IRModule.h.

Constructor & Destructor Documentation

◆ PyDiagnostic()

mlir::python::PyDiagnostic::PyDiagnostic ( MlirDiagnostic diagnostic)
inline

Definition at line 332 of file IRModule.h.

Referenced by getNotes(), and invalidate().

Member Function Documentation

◆ getInfo()

PyDiagnostic::DiagnosticInfo PyDiagnostic::getInfo ( )

Definition at line 887 of file IRCore.cpp.

References getInfo(), getLocation(), getMessage(), getNotes(), and getSeverity().

Referenced by getInfo().

◆ getLocation()

PyLocation PyDiagnostic::getLocation ( )

◆ getMessage()

nb::str PyDiagnostic::getMessage ( )

◆ getNotes()

nb::tuple PyDiagnostic::getNotes ( )

Definition at line 871 of file IRCore.cpp.

References mlirDiagnosticGetNote(), mlirDiagnosticGetNumNotes(), and PyDiagnostic().

Referenced by getInfo().

◆ getSeverity()

MlirDiagnosticSeverity PyDiagnostic::getSeverity ( )

Definition at line 851 of file IRCore.cpp.

References mlirDiagnosticGetSeverity().

Referenced by getInfo().

◆ invalidate()

void PyDiagnostic::invalidate ( )

Definition at line 817 of file IRCore.cpp.

References invalidate(), and PyDiagnostic().

Referenced by mlir::python::PyMlirContext::attachDiagnosticHandler(), and invalidate().

◆ isValid()

bool mlir::python::PyDiagnostic::isValid ( )
inline

Definition at line 334 of file IRModule.h.


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