MLIR 22.0.0git
mlir::tblgen::ClassDeclaration Class Referenceabstract

A class declaration is a class element that appears as part of its declaration. More...

#include "mlir/TableGen/Class.h"

Inheritance diagram for mlir::tblgen::ClassDeclaration:

Public Types

enum  Kind {
  Method , UsingDeclaration , VisibilityDeclaration , Field ,
  ExtraClassDeclaration
}
 Kinds for LLVM-style RTTI. More...

Public Member Functions

virtual ~ClassDeclaration ()=default
 ClassDeclaration (Kind kind)
 Create a class declaration with a given kind.
Kind getKind () const
 Get the class declaration kind.
virtual void writeDeclTo (raw_indented_ostream &os) const =0
 Write the declaration.
virtual void writeDefTo (raw_indented_ostream &os, StringRef namePrefix) const
 Write the definition, if any.

Detailed Description

A class declaration is a class element that appears as part of its declaration.

Definition at line 266 of file Class.h.

Member Enumeration Documentation

◆ Kind

Kinds for LLVM-style RTTI.

Enumerator
Method 
UsingDeclaration 
VisibilityDeclaration 
Field 
ExtraClassDeclaration 

Definition at line 271 of file Class.h.

Constructor & Destructor Documentation

◆ ~ClassDeclaration()

virtual mlir::tblgen::ClassDeclaration::~ClassDeclaration ( )
virtualdefault

◆ ClassDeclaration()

mlir::tblgen::ClassDeclaration::ClassDeclaration ( Kind kind)
inline

Create a class declaration with a given kind.

Definition at line 279 of file Class.h.

Referenced by mlir::tblgen::ClassDeclarationBase< DeclKind >::ClassDeclarationBase(), and mlir::tblgen::ClassDeclarationBase< DeclKind >::classof().

Member Function Documentation

◆ getKind()

Kind mlir::tblgen::ClassDeclaration::getKind ( ) const
inline

Get the class declaration kind.

Definition at line 282 of file Class.h.

Referenced by mlir::tblgen::ClassDeclarationBase< DeclKind >::classof().

◆ writeDeclTo()

virtual void mlir::tblgen::ClassDeclaration::writeDeclTo ( raw_indented_ostream & os) const
pure virtual

Write the declaration.

Implemented in mlir::tblgen::Constructor, and mlir::tblgen::Method.

◆ writeDefTo()

virtual void mlir::tblgen::ClassDeclaration::writeDefTo ( raw_indented_ostream & os,
StringRef namePrefix ) const
inlinevirtual

Write the definition, if any.

namePrefix is the namespace prefix, which may contains a class name.

Reimplemented in mlir::tblgen::Constructor, and mlir::tblgen::Method.

Definition at line 289 of file Class.h.


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