CIRCT  18.0.0git
Classes | Namespaces | Enumerations | Functions
PrettyPrinterHelpers.h File Reference
#include "circt/Support/PrettyPrinter.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/StringSaver.h"
#include "llvm/Support/raw_ostream.h"
#include <queue>
Include dependency graph for PrettyPrinterHelpers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  circt::pretty::BufferingPP
 Buffer tokens for clients that need to adjust things. More...
 
class  circt::pretty::TokenBuilder< PPTy >
 Add convenience methods for generating pretty-printing tokens. More...
 
class  circt::pretty::TokenStringSaver
 PrettyPrinter::Listener that saves strings while live. More...
 
class  circt::pretty::PrintEventAndStorageListener< CallableTy, DataTy >
 Note: Callable class must implement a callable with signature: void (Data) More...
 
struct  circt::pretty::PPExtString
 String wrapper to indicate string has external storage. More...
 
struct  circt::pretty::PPSaveString
 String wrapper to indicate string needs to be saved. More...
 
class  circt::pretty::TokenStream< PPTy >
 Wrap a PrettyPrinter with TokenBuilder features as well as operator<<'s. More...
 
class  circt::pretty::TokenStreamWithCallback< CallableType, DataType, PPTy >
 Wrap the TokenStream with a helper for CallbackTokens, to record the print events on the stream. More...
 

Namespaces

 circt
 This file defines an intermediate representation for circuits acting as an abstraction for constraints defined over an SMT's solver context.
 
 circt::pretty
 
 circt::pretty::detail
 

Enumerations

enum class  circt::pretty::PP {
  circt::pretty::bbox2 , circt::pretty::cbox0 , circt::pretty::cbox2 , circt::pretty::end ,
  circt::pretty::eof , circt::pretty::ibox0 , circt::pretty::ibox2 , circt::pretty::nbsp ,
  circt::pretty::neverbox , circt::pretty::neverbreak , circt::pretty::newline , circt::pretty::space ,
  circt::pretty::zerobreak
}
 Send one of these to TokenStream to add the corresponding token. More...
 

Functions

void circt::pretty::detail::emitNBSP (unsigned n, llvm::function_ref< void(Token)> add)
 Add multiple non-breaking spaces as a single token. More...