CIRCT 24.0.0git
Loading...
Searching...
No Matches
circt::pretty::TokenBase< DerivedT, DerivedKind > Struct Template Reference

Helper class to CRTP-derive common functions. More...

#include <PrettyPrinter.h>

Inheritance diagram for circt::pretty::TokenBase< DerivedT, DerivedKind >:
Collaboration diagram for circt::pretty::TokenBase< DerivedT, DerivedKind >:

Static Public Member Functions

static bool classof (const Token *t)

Protected Types

using InfoType

Protected Member Functions

 TokenBase ()
InfoType & getInfoMut ()
const InfoType & getInfo () const
template<typename... Args>
void initialize (Args &&...args)
Protected Member Functions inherited from circt::pretty::Token
 Token (Kind k)

Additional Inherited Members

Public Types inherited from circt::pretty::Token
enum class  Kind {
  String , Break , Begin , End ,
  Callback
}
Public Member Functions inherited from circt::pretty::Token
Kind getKind () const
Static Protected Member Functions inherited from circt::pretty::Token
template<Kind k, typename T>
static auto & getInfoImpl (T &t)

Detailed Description

template<class DerivedT, Token::Kind DerivedKind>
struct circt::pretty::TokenBase< DerivedT, DerivedKind >

Helper class to CRTP-derive common functions.

Definition at line 115 of file PrettyPrinter.h.

Member Typedef Documentation

◆ InfoType

template<class DerivedT, Token::Kind DerivedKind>
using circt::pretty::TokenBase< DerivedT, DerivedKind >::InfoType
protected
Initial value:
std::remove_reference_t<std::invoke_result_t<
static auto & getInfoImpl(T &t)

Definition at line 121 of file PrettyPrinter.h.

Constructor & Destructor Documentation

◆ TokenBase()

template<class DerivedT, Token::Kind DerivedKind>
circt::pretty::TokenBase< DerivedT, DerivedKind >::TokenBase ( )
inlineprotected

Definition at line 119 of file PrettyPrinter.h.

References circt::pretty::Token::Token().

Member Function Documentation

◆ classof()

template<class DerivedT, Token::Kind DerivedKind>
bool circt::pretty::TokenBase< DerivedT, DerivedKind >::classof ( const Token * t)
inlinestatic

◆ getInfo()

template<class DerivedT, Token::Kind DerivedKind>
const InfoType & circt::pretty::TokenBase< DerivedT, DerivedKind >::getInfo ( ) const
inlineprotected

Definition at line 126 of file PrettyPrinter.h.

References circt::pretty::Token::getInfoImpl().

◆ getInfoMut()

template<class DerivedT, Token::Kind DerivedKind>
InfoType & circt::pretty::TokenBase< DerivedT, DerivedKind >::getInfoMut ( )
inlineprotected

Definition at line 124 of file PrettyPrinter.h.

References circt::pretty::Token::getInfoImpl().

Referenced by initialize().

◆ initialize()

template<class DerivedT, Token::Kind DerivedKind>
template<typename... Args>
void circt::pretty::TokenBase< DerivedT, DerivedKind >::initialize ( Args &&... args)
inlineprotected

Definition at line 131 of file PrettyPrinter.h.

References getInfoMut().


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