GCC Middle and Back End API Reference
output_buffer Class Reference

#include <pretty-print.h>

Collaboration diagram for output_buffer:

Public Member Functions

 output_buffer ()
 
 output_buffer (const output_buffer &)=delete
 
 output_buffer (output_buffer &&)=delete
 
 ~output_buffer ()
 
output_bufferoperator= (const output_buffer &)=delete
 
output_bufferoperator= (output_buffer &&)=delete
 
pp_formatted_chunkspush_formatted_chunks ()
 
void pop_formatted_chunks ()
 
void dump (FILE *out, int indent) const
 
void DEBUG_FUNCTION dump () const
 

Data Fields

struct obstack m_formatted_obstack
 
struct obstack m_chunk_obstack
 
struct obstackm_obstack
 
pp_formatted_chunksm_cur_formatted_chunks
 
FILE * m_stream
 
int m_line_length
 
char m_digit_buffer [128]
 
bool m_flush_p
 

Detailed Description

The output buffer datatype.  This is best seen as an abstract datatype
whose fields should not be accessed directly by clients.   

Constructor & Destructor Documentation

◆ output_buffer() [1/3]

output_buffer::output_buffer ( )

◆ output_buffer() [2/3]

output_buffer::output_buffer ( const output_buffer & )
delete

◆ output_buffer() [3/3]

output_buffer::output_buffer ( output_buffer && )
delete

◆ ~output_buffer()

output_buffer::~output_buffer ( )

Member Function Documentation

◆ dump() [1/2]

void DEBUG_FUNCTION output_buffer::dump ( ) const
inline

References dump().

Referenced by dump().

◆ dump() [2/2]

void output_buffer::dump ( FILE * out,
int indent ) const

◆ operator=() [1/2]

output_buffer & output_buffer::operator= ( const output_buffer & )
delete

◆ operator=() [2/2]

output_buffer & output_buffer::operator= ( output_buffer && )
delete

◆ pop_formatted_chunks()

void output_buffer::pop_formatted_chunks ( )
Deallocate the current pp_formatted_chunks structure and everything after it
(i.e. the associated series of formatted strings, pp_token_lists, and
pp_tokens).   

References gcc_assert, m_chunk_obstack, m_cur_formatted_chunks, and pp_formatted_chunks::m_prev.

◆ push_formatted_chunks()

pp_formatted_chunks * output_buffer::push_formatted_chunks ( )
Allocate a new pp_formatted_chunks from chunk_obstack and push
it onto this buffer's stack.
This represents the result of phases 1 and 2 of formatting.   

References m_chunk_obstack, m_cur_formatted_chunks, and pp_formatted_chunks::m_prev.

Referenced by pretty_printer::format().

Field Documentation

◆ m_chunk_obstack

◆ m_cur_formatted_chunks

pp_formatted_chunks* output_buffer::m_cur_formatted_chunks

◆ m_digit_buffer

char output_buffer::m_digit_buffer[128]

◆ m_flush_p

◆ m_formatted_obstack

◆ m_line_length

◆ m_obstack

◆ m_stream


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