GCC Middle and Back End API Reference
diagnostics::digraphs::lazy_digraphs Class Referenceabstract

#include <diagnostic-digraphs.h>

Inheritance diagram for diagnostics::digraphs::lazy_digraphs:

Public Member Functions

virtual ~lazy_digraphs ()
const std::vector< std::unique_ptr< digraph > > & get_or_create_digraphs () const

Private Member Functions

virtual std::unique_ptr< std::vector< std::unique_ptr< digraph > > > create_digraphs () const =0

Private Attributes

std::unique_ptr< std::vector< std::unique_ptr< digraph > > > m_digraphs

Detailed Description

Abstract base class for lazily creating a collection of
digraphs on demand.

This allows us to avoid the work of creating the digraphs for
the common case where we just have a text sink.   

Constructor & Destructor Documentation

◆ ~lazy_digraphs()

virtual diagnostics::digraphs::lazy_digraphs::~lazy_digraphs ( )
inlinevirtual

Member Function Documentation

◆ create_digraphs()

virtual std::unique_ptr< std::vector< std::unique_ptr< digraph > > > diagnostics::digraphs::lazy_digraphs::create_digraphs ( ) const
privatepure virtual

Implemented in prebuilt_digraphs.

Referenced by get_or_create_digraphs().

◆ get_or_create_digraphs()

const std::vector< std::unique_ptr< diagnostics::digraphs::digraph > > & diagnostics::digraphs::lazy_digraphs::get_or_create_digraphs ( ) const

Field Documentation

◆ m_digraphs

std::unique_ptr<std::vector<std::unique_ptr<digraph> > > diagnostics::digraphs::lazy_digraphs::m_digraphs
mutableprivate

Referenced by get_or_create_digraphs().


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