LLDB mainline
Public Types | Public Member Functions | Protected Attributes | Private Member Functions | List of all members
lldb_private::LockableStreamFile Class Reference

#include <StreamFile.h>

Public Types

using Mutex = std::recursive_mutex
 

Public Member Functions

 LockableStreamFile (std::shared_ptr< StreamFile > stream_file_sp, Mutex &mutex)
 
 LockableStreamFile (StreamFile &stream_file, Mutex &mutex)
 
 LockableStreamFile (FILE *fh, bool transfer_ownership, Mutex &mutex)
 
 LockableStreamFile (std::shared_ptr< File > file_sp, Mutex &mutex)
 
LockedStreamFile Lock ()
 
FileGetUnlockedFile ()
 Unsafe accessors to get the underlying File without a lock.
 
std::shared_ptr< FileGetUnlockedFileSP ()
 

Protected Attributes

std::shared_ptr< Filem_file_sp
 
Mutexm_mutex
 

Private Member Functions

 LockableStreamFile (const LockableStreamFile &)=delete
 
const LockableStreamFileoperator= (const LockableStreamFile &)=delete
 

Detailed Description

Definition at line 75 of file StreamFile.h.

Member Typedef Documentation

◆ Mutex

using lldb_private::LockableStreamFile::Mutex = std::recursive_mutex

Definition at line 77 of file StreamFile.h.

Constructor & Destructor Documentation

◆ LockableStreamFile() [1/5]

lldb_private::LockableStreamFile::LockableStreamFile ( std::shared_ptr< StreamFile stream_file_sp,
Mutex mutex 
)
inline

Definition at line 79 of file StreamFile.h.

◆ LockableStreamFile() [2/5]

lldb_private::LockableStreamFile::LockableStreamFile ( StreamFile stream_file,
Mutex mutex 
)
inline

Definition at line 81 of file StreamFile.h.

◆ LockableStreamFile() [3/5]

lldb_private::LockableStreamFile::LockableStreamFile ( FILE *  fh,
bool  transfer_ownership,
Mutex mutex 
)
inline

Definition at line 83 of file StreamFile.h.

◆ LockableStreamFile() [4/5]

lldb_private::LockableStreamFile::LockableStreamFile ( std::shared_ptr< File file_sp,
Mutex mutex 
)
inline

Definition at line 86 of file StreamFile.h.

◆ LockableStreamFile() [5/5]

lldb_private::LockableStreamFile::LockableStreamFile ( const LockableStreamFile )
privatedelete

Member Function Documentation

◆ GetUnlockedFile()

File & lldb_private::LockableStreamFile::GetUnlockedFile ( )
inline

Unsafe accessors to get the underlying File without a lock.

Exists for legacy reasons.

Definition at line 94 of file StreamFile.h.

References m_file_sp.

◆ GetUnlockedFileSP()

std::shared_ptr< File > lldb_private::LockableStreamFile::GetUnlockedFileSP ( )
inline

Definition at line 95 of file StreamFile.h.

References m_file_sp.

◆ Lock()

LockedStreamFile lldb_private::LockableStreamFile::Lock ( )
inline

Definition at line 89 of file StreamFile.h.

References m_file_sp, and m_mutex.

◆ operator=()

const LockableStreamFile & lldb_private::LockableStreamFile::operator= ( const LockableStreamFile )
privatedelete

Member Data Documentation

◆ m_file_sp

std::shared_ptr<File> lldb_private::LockableStreamFile::m_file_sp
protected

Definition at line 99 of file StreamFile.h.

Referenced by GetUnlockedFile(), GetUnlockedFileSP(), and Lock().

◆ m_mutex

Mutex& lldb_private::LockableStreamFile::m_mutex
protected

Definition at line 100 of file StreamFile.h.

Referenced by Lock().


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