clang 8.0.0

Classes | Public Types | Public Member Functions | List of all members
clang::threadSafety::CopyOnWriteVector< T > Class Template Reference

`#include "clang/Analysis/Analyses/ThreadSafetyUtil.h"`

Inheritance diagram for clang::threadSafety::CopyOnWriteVector< T >:
[legend]

## Public Types
using | const_iterator = typename std::vector< T >::const_iterator

## Public Member Functions
| CopyOnWriteVector ()=default
| CopyOnWriteVector (CopyOnWriteVector &&V)
CopyOnWriteVector & | operator= (CopyOnWriteVector &&V)
| CopyOnWriteVector (const CopyOnWriteVector &)=delete
CopyOnWriteVector & | operator= (const CopyOnWriteVector &)=delete
| ~CopyOnWriteVector ()
bool | valid () const
bool | writable () const
void | init ()
void | destroy ()
void | makeWritable ()
CopyOnWriteVector | clone ()
const std::vector< T > & | elements () const
const_iterator | begin () const
const_iterator | end () const
const T & | operator[] (unsigned i) const
unsigned | size () const
bool | sameAs (const CopyOnWriteVector &V) const
void | clear ()
void | push_back (const T &Elem)
T & | elem (unsigned i)
void | downsize (unsigned i)

## Detailed Description

### template<typename T>
class clang::threadSafety::CopyOnWriteVector< T >

Definition at line 236 of file ThreadSafetyUtil.h.

## Member Typedef Documentation

## ◆ const_iterator

template<typename T>

using clang::threadSafety::CopyOnWriteVector< T >::const_iterator = typename std::vector<T>::const_iterator

Definition at line 302 of file ThreadSafetyUtil.h.

## Constructor & Destructor Documentation

## ◆ CopyOnWriteVector() [1/3]

template<typename T>

clang::threadSafety::CopyOnWriteVector< T >::CopyOnWriteVector | ( |  | ) |
| default

## ◆ CopyOnWriteVector() [2/3]

template<typename T>

clang::threadSafety::CopyOnWriteVector< T >::CopyOnWriteVector | ( | CopyOnWriteVector< T > && | V | ) |
| inline

Definition at line 248 of file ThreadSafetyUtil.h.

## ◆ CopyOnWriteVector() [3/3]

template<typename T>

clang::threadSafety::CopyOnWriteVector< T >::CopyOnWriteVector | ( | const CopyOnWriteVector< T > & |  | ) |
| delete

## ◆ ~CopyOnWriteVector()

template<typename T>

clang::threadSafety::CopyOnWriteVector< T >::~CopyOnWriteVector | ( |  | ) |
| inline

Definition at line 261 of file ThreadSafetyUtil.h.

## Member Function Documentation

## ◆ begin()

template<typename T>

const_iterator clang::threadSafety::CopyOnWriteVector< T >::begin | ( |  | ) | const
| inline

Definition at line 306 of file ThreadSafetyUtil.h.

## ◆ clear()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::clear | ( |  | ) |
| inline

Definition at line 317 of file ThreadSafetyUtil.h.

## ◆ clone()

template<typename T>

CopyOnWriteVector clang::threadSafety::CopyOnWriteVector< T >::clone | ( |  | ) |
| inline

Definition at line 300 of file ThreadSafetyUtil.h.

## ◆ destroy()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::destroy | ( |  | ) |
| inline

Definition at line 277 of file ThreadSafetyUtil.h.

## ◆ downsize()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::downsize | ( | unsigned | i | ) |
| inline

Definition at line 336 of file ThreadSafetyUtil.h.

## ◆ elem()

template<typename T>

T& clang::threadSafety::CopyOnWriteVector< T >::elem | ( | unsigned | i | ) |
| inline

Definition at line 330 of file ThreadSafetyUtil.h.

## ◆ elements()

template<typename T>

const std::vector<T>& clang::threadSafety::CopyOnWriteVector< T >::elements | ( |  | ) | const
| inline

Definition at line 304 of file ThreadSafetyUtil.h.

## ◆ end()

template<typename T>

const_iterator clang::threadSafety::CopyOnWriteVector< T >::end | ( |  | ) | const
| inline

Definition at line 307 of file ThreadSafetyUtil.h.

## ◆ init()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::init | ( |  | ) |
| inline

Definition at line 270 of file ThreadSafetyUtil.h.

## ◆ makeWritable()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::makeWritable | ( |  | ) |
| inline

Definition at line 288 of file ThreadSafetyUtil.h.

Referenced by maybeUpdateVD().

## ◆ operator=() [1/2]

template<typename T>

CopyOnWriteVector& clang::threadSafety::CopyOnWriteVector< T >::operator= | ( | CopyOnWriteVector< T > && | V | ) |
| inline

Definition at line 250 of file ThreadSafetyUtil.h.

## ◆ operator=() [2/2]

template<typename T>

CopyOnWriteVector& clang::threadSafety::CopyOnWriteVector< T >::operator= | ( | const CopyOnWriteVector< T > & |  | ) |
| delete

## ◆ operator[]()

template<typename T>

const T& clang::threadSafety::CopyOnWriteVector< T >::operator[] | ( | unsigned | i | ) | const
| inline

Definition at line 309 of file ThreadSafetyUtil.h.

## ◆ push_back()

template<typename T>

void clang::threadSafety::CopyOnWriteVector< T >::push_back | ( | const T & | Elem | ) |
| inline

Definition at line 323 of file ThreadSafetyUtil.h.

Referenced by maybeUpdateVD().

## ◆ sameAs()

template<typename T>

bool clang::threadSafety::CopyOnWriteVector< T >::sameAs | ( | const CopyOnWriteVector< T > & | V | ) | const
| inline

Definition at line 314 of file ThreadSafetyUtil.h.

## ◆ size()

template<typename T>

unsigned clang::threadSafety::CopyOnWriteVector< T >::size | ( |  | ) | const
| inline

Definition at line 311 of file ThreadSafetyUtil.h.

Referenced by maybeUpdateVD().

## ◆ valid()

template<typename T>

bool clang::threadSafety::CopyOnWriteVector< T >::valid | ( |  | ) | const
| inline

Definition at line 264 of file ThreadSafetyUtil.h.

## ◆ writable()

template<typename T>

bool clang::threadSafety::CopyOnWriteVector< T >::writable | ( |  | ) | const
| inline

Definition at line 267 of file ThreadSafetyUtil.h.

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

- include/clang/Analysis/Analyses/ThreadSafetyUtil.h