GCC Middle and Back End API Reference
file_wrapper Struct Reference

#include <pex.h>

Public Types

enum class  ownership { owned , borrowed }

Public Member Functions

 file_wrapper (FILE *file, enum ownership ownership)
 ~file_wrapper ()
std::unique_ptr< std::vector< char > > read_all ()

Data Fields

FILE * m_file
enum ownership m_ownership

Detailed Description

C++ wrapper around libiberty's pex API. Copyright (C) 2025 Free Software Foundation, Inc. Contributed by David Malcolm <dmalcolm@redhat.com>. This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.

Member Enumeration Documentation

◆ ownership

enum class file_wrapper::ownership
strong
Enumerator
owned 
borrowed 

Constructor & Destructor Documentation

◆ file_wrapper()

file_wrapper::file_wrapper ( FILE * file,
enum ownership ownership )
inline

References m_file, and m_ownership.

◆ ~file_wrapper()

file_wrapper::~file_wrapper ( )
inline

References gcc_assert, m_file, m_ownership, and owned.

Member Function Documentation

◆ read_all()

std::unique_ptr< std::vector< char > > file_wrapper::read_all ( )

Field Documentation

◆ m_file

FILE* file_wrapper::m_file

◆ m_ownership

enum ownership file_wrapper::m_ownership

Referenced by file_wrapper(), and ~file_wrapper().


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