Classes | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends

nsTArray_base< Alloc > Class Template Reference

#include <nsTArray.h>

Inheritance diagram for nsTArray_base< Alloc >:
Collaboration diagram for nsTArray_base< Alloc >:

List of all members.

Classes

struct  AutoArray

Public Types

typedef PRUint32 size_type
typedef PRUint32 index_type

Public Member Functions

size_type Length () const
PRBool IsEmpty () const
size_type Capacity () const

Protected Types

typedef nsTArrayHeader Header

Protected Member Functions

 nsTArray_base ()
 ~nsTArray_base ()
PRBool EnsureCapacity (size_type capacity, size_type elemSize)
void ShrinkCapacity (size_type elemSize)
void ShiftData (index_type start, size_type oldLen, size_type newLen, size_type elemSize)
void IncrementLength (PRUint32 n)
PRBool InsertSlotsAt (index_type index, size_type count, size_type elementSize)
template<class Allocator >
PRBool SwapArrayElements (nsTArray_base< Allocator > &other, size_type elemSize)
PRBool EnsureNotUsingAutoArrayBuffer (size_type elemSize)
PRBool IsAutoArray ()
HeaderGetAutoArrayBuffer ()
PRBool UsesAutoArrayBuffer ()
HeaderHdr () const
Header ** PtrToHdr ()

Static Protected Member Functions

static HeaderEmptyHdr ()

Protected Attributes

HeadermHdr

Friends

class nsTArray_base

template<class Alloc>
class nsTArray_base< Alloc >


Member Typedef Documentation

template<class Alloc>
typedef nsTArrayHeader nsTArray_base< Alloc >::Header [protected]

Reimplemented in nsAutoTPtrArray< E, N, Alloc >, nsAutoArrayBase< nsTArray< nsTransition, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsDisplayItem *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< FallibleTArray< PRUint8 >, N >, nsAutoArrayBase< nsTArray< gfxGlyphExtents *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< PresShellState, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< E, Alloc >, N >, nsAutoArrayBase< nsTArray< nsCSSStyleSheet *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsIFrame *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsARefreshObserver *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< E, nsTArrayDefaultAllocator >, 0 >, nsAutoArrayBase< nsTArray< nsIPresShell *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsRefPtr< AsyncUsageRunnable >, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< InfallibleTArray< E >, N >, nsAutoArrayBase< nsTArray< nsCSSRuleProcessor *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< FontSetByLangEntry, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< TextItem, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsCOMPtr< nsISupports >, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsCOMPtr< nsICSSLoaderObserver >, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< ThemeGeometry, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< nsRefPtr< SetVersionRunnable >, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< GlyphRun, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< PRUint8, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< InfallibleTArray< E >, 0 >, nsAutoArrayBase< FallibleTArray< E >, 0 >, nsAutoArrayBase< nsTArray< SheetLoadData *, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< T, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< Layer, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< nsTArray< PRUnichar, nsTArrayDefaultAllocator >, N >, nsAutoArrayBase< FallibleTArray< E >, N >, and nsAutoArrayBase< nsTArray< nsRefPtr< OriginClearRunnable >, nsTArrayDefaultAllocator >, N >.

template<class Alloc>
typedef PRUint32 nsTArray_base< Alloc >::index_type

Reimplemented in nsTArray< E, Alloc >, nsTPtrArray< E, Alloc >, nsTArray< RoundedRect >, nsTArray< Request >, nsTArray< nsIDocument * >, nsTArray< PRUint8, nsTArrayFallibleAllocator >, nsTArray< nsAutoPtr< ObjectStoreInfo > >, nsTArray< nsRefPtr< nsAccessible > >, nsTArray< gfxFont * >, nsTArray< gfxFontFeature >, nsTArray< GLint >, nsTArray< nsCOMPtr< nsIRunnable > >, nsTArray< ThemeGeometry, nsTArrayDefaultAllocator >, nsTArray< PtrBits >, nsTArray< nsDelayedBlurOrFocusEvent >, nsTArray< nsIntRect >, nsTArray< Variant >, nsTArray< E, nsTArrayFallibleAllocator >, nsTArray< E *, Alloc >, nsTArray< nsRefPtr< nsScriptLoadRequest > >, nsTArray< nsStyleGradientStop >, nsTArray< PrimitiveInfo * >, nsTArray< SAXAttr >, nsTArray< nsAutoPtr< Block > >, nsTArray< nsIFrame *, nsTArrayDefaultAllocator >, nsTArray< nsEntry >, nsTArray< nsRefPtr< OriginClearRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsCString_external >, nsTArray< nsAutoPtr< AlertObserver >, nsTArrayInfallibleAllocator >, nsTArray< T * >, nsTArray< T >, nsTArray< PreloadInfo >, nsTArray< nsNameSpaceEntry >, nsTArray< DelayedDialogData *, nsTArrayInfallibleAllocator >, nsTArray< PrimitiveInfo >, nsTArray< PRUnichar, nsTArrayDefaultAllocator >, nsTArray< gfxFontTestItem >, nsTArray< nsRefPtr< gfxFont > >, nsTArray< nsCSSStyleSheet *, nsTArrayDefaultAllocator >, nsTArray< FontSetByLangEntry, nsTArrayDefaultAllocator >, nsTArray< nsIPresShell *, nsTArrayDefaultAllocator >, nsTArray< gfxFontFaceSrc >, nsTArray< nsRefPtr< IDBIndex > >, nsTArray< Variant, nsTArrayInfallibleAllocator >, nsTArray< RequestHeaderTuple >, nsTArray< T, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< gfxFontEntry > >, nsTArray< nsRuleNode * >, nsTArray< nsDisplayItem *, nsTArrayDefaultAllocator >, nsTArray< nsKeyPoint >, nsTArray< nsAutoPtr< ChildTimer > >, nsTArray< MilestoneEntry >, nsTArray< nsRefPtr< nsISMILAnimationElement > >, nsTArray< nsCOMPtr< nsICSSLoaderObserver >, nsTArrayDefaultAllocator >, nsTArray< PresShellState, nsTArrayDefaultAllocator >, nsTArray< PRUint32 >, nsTArray< E, nsTArrayInfallibleAllocator >, nsTArray< PRInt32 >, nsTArray< nsTransition, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< IDBObjectStore > >, nsTArray< SheetLoadData *, nsTArrayDefaultAllocator >, nsTArray< nsString_external >, nsTArray< mozilla::dom::Link * >, nsTArray< UniformValue >, nsTArray< MorkColumn >, nsTArray< nsAlternativeCharCode >, nsTArray< nsCSSRuleProcessor *, nsTArrayDefaultAllocator >, nsTArray< ImageContainer * >, nsTArray< PendingData >, nsTArray< TextItem, nsTArrayDefaultAllocator >, nsTArray< nsISupports ** >, nsTArray< nsStyleContext * >, nsTArray< nsRefPtr< SheetLoadData > >, nsTArray< nsISupports * >, nsTArray< nsRefPtr< AsyncUsageRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< nsXBLBinding > >, nsTArray< nsRefPtr< nsCSSStyleSheet > >, nsTArray< E, nsTArrayDefaultAllocator >, nsTArray< ClippedDisplayItem >, nsTArray< PLHashEntry * >, nsTArray< nsRefPtr< nsScriptLoader > >, nsTArray< nsFontFaceRuleContainer >, nsTArray< LayerManagerOGLProgram * >, nsTArray< nsRefPtr< IDBDatabase > >, nsTArray< ChildAsyncCall * >, nsTArray< GlyphRun, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< SetVersionRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsCOMPtr< nsISupports >, nsTArrayDefaultAllocator >, nsTArray< PRUint8, nsTArrayDefaultAllocator >, nsTArray< gfxGlyphExtents *, nsTArrayDefaultAllocator >, nsTArray< Layer, nsTArrayDefaultAllocator >, nsTArray< nsCSSValueGradientStop >, nsTArray< nsARefreshObserver *, nsTArrayDefaultAllocator >, and nsTArray< nsAutoPtr< ChannelEvent > >.

template<class Alloc>
typedef PRUint32 nsTArray_base< Alloc >::size_type

Reimplemented in nsTArray< E, Alloc >, FallibleTArray< E >, InfallibleTArray< E >, nsTPtrArray< E, Alloc >, nsTArray< RoundedRect >, nsTArray< Request >, nsTArray< nsIDocument * >, nsTArray< PRUint8, nsTArrayFallibleAllocator >, nsTArray< nsAutoPtr< ObjectStoreInfo > >, nsTArray< nsRefPtr< nsAccessible > >, nsTArray< gfxFont * >, nsTArray< gfxFontFeature >, nsTArray< GLint >, nsTArray< nsCOMPtr< nsIRunnable > >, nsTArray< ThemeGeometry, nsTArrayDefaultAllocator >, nsTArray< PtrBits >, nsTArray< nsDelayedBlurOrFocusEvent >, nsTArray< nsIntRect >, nsTArray< Variant >, nsTArray< E, nsTArrayFallibleAllocator >, nsTArray< E *, Alloc >, nsTArray< nsRefPtr< nsScriptLoadRequest > >, nsTArray< nsStyleGradientStop >, nsTArray< PrimitiveInfo * >, nsTArray< SAXAttr >, nsTArray< nsAutoPtr< Block > >, nsTArray< nsIFrame *, nsTArrayDefaultAllocator >, nsTArray< nsEntry >, nsTArray< nsRefPtr< OriginClearRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsCString_external >, nsTArray< nsAutoPtr< AlertObserver >, nsTArrayInfallibleAllocator >, nsTArray< T * >, nsTArray< T >, nsTArray< PreloadInfo >, nsTArray< nsNameSpaceEntry >, nsTArray< DelayedDialogData *, nsTArrayInfallibleAllocator >, nsTArray< PrimitiveInfo >, nsTArray< PRUnichar, nsTArrayDefaultAllocator >, nsTArray< gfxFontTestItem >, nsTArray< nsRefPtr< gfxFont > >, nsTArray< nsCSSStyleSheet *, nsTArrayDefaultAllocator >, nsTArray< FontSetByLangEntry, nsTArrayDefaultAllocator >, nsTArray< nsIPresShell *, nsTArrayDefaultAllocator >, nsTArray< gfxFontFaceSrc >, nsTArray< nsRefPtr< IDBIndex > >, nsTArray< Variant, nsTArrayInfallibleAllocator >, nsTArray< RequestHeaderTuple >, nsTArray< T, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< gfxFontEntry > >, nsTArray< nsRuleNode * >, nsTArray< nsDisplayItem *, nsTArrayDefaultAllocator >, nsTArray< nsKeyPoint >, nsTArray< nsAutoPtr< ChildTimer > >, nsTArray< MilestoneEntry >, nsTArray< nsRefPtr< nsISMILAnimationElement > >, nsTArray< nsCOMPtr< nsICSSLoaderObserver >, nsTArrayDefaultAllocator >, nsTArray< PresShellState, nsTArrayDefaultAllocator >, nsTArray< PRUint32 >, nsTArray< E, nsTArrayInfallibleAllocator >, nsTArray< PRInt32 >, nsTArray< nsTransition, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< IDBObjectStore > >, nsTArray< SheetLoadData *, nsTArrayDefaultAllocator >, nsTArray< nsString_external >, nsTArray< mozilla::dom::Link * >, nsTArray< UniformValue >, nsTArray< MorkColumn >, nsTArray< nsAlternativeCharCode >, nsTArray< nsCSSRuleProcessor *, nsTArrayDefaultAllocator >, nsTArray< ImageContainer * >, nsTArray< PendingData >, nsTArray< TextItem, nsTArrayDefaultAllocator >, nsTArray< nsISupports ** >, nsTArray< nsStyleContext * >, nsTArray< nsRefPtr< SheetLoadData > >, nsTArray< nsISupports * >, nsTArray< nsRefPtr< AsyncUsageRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< nsXBLBinding > >, nsTArray< nsRefPtr< nsCSSStyleSheet > >, nsTArray< E, nsTArrayDefaultAllocator >, nsTArray< ClippedDisplayItem >, nsTArray< PLHashEntry * >, nsTArray< nsRefPtr< nsScriptLoader > >, nsTArray< nsFontFaceRuleContainer >, nsTArray< LayerManagerOGLProgram * >, nsTArray< nsRefPtr< IDBDatabase > >, nsTArray< ChildAsyncCall * >, nsTArray< GlyphRun, nsTArrayDefaultAllocator >, nsTArray< nsRefPtr< SetVersionRunnable >, nsTArrayDefaultAllocator >, nsTArray< nsCOMPtr< nsISupports >, nsTArrayDefaultAllocator >, nsTArray< PRUint8, nsTArrayDefaultAllocator >, nsTArray< gfxGlyphExtents *, nsTArrayDefaultAllocator >, nsTArray< Layer, nsTArrayDefaultAllocator >, nsTArray< nsCSSValueGradientStop >, nsTArray< nsARefreshObserver *, nsTArrayDefaultAllocator >, nsTArray< nsAutoPtr< ChannelEvent > >, FallibleTArray< PRUint8 >, InfallibleTArray< DelayedDialogData * >, InfallibleTArray< Variant >, and InfallibleTArray< nsAutoPtr< AlertObserver > >.


Constructor & Destructor Documentation

template<class Alloc>
nsTArray_base< Alloc >::nsTArray_base (  )  [protected]
template<class Alloc >
nsTArray_base< Alloc >::~nsTArray_base (  )  [protected]

Member Function Documentation

template<class Alloc>
size_type nsTArray_base< Alloc >::Capacity (  )  const [inline]
template<class Alloc>
static Header* nsTArray_base< Alloc >::EmptyHdr (  )  [inline, static, protected]
template<class Alloc >
PRBool nsTArray_base< Alloc >::EnsureCapacity ( size_type  capacity,
size_type  elemSize 
) [protected]
template<class Alloc >
PRBool nsTArray_base< Alloc >::EnsureNotUsingAutoArrayBuffer ( size_type  elemSize  )  [protected]
template<class Alloc>
Header* nsTArray_base< Alloc >::GetAutoArrayBuffer (  )  [inline, protected]
template<class Alloc>
Header* nsTArray_base< Alloc >::Hdr (  )  const [inline, protected]
template<class Alloc>
void nsTArray_base< Alloc >::IncrementLength ( PRUint32  n  )  [inline, protected]
template<class Alloc >
PRBool nsTArray_base< Alloc >::InsertSlotsAt ( index_type  index,
size_type  count,
size_type  elementSize 
) [protected]
template<class Alloc>
PRBool nsTArray_base< Alloc >::IsAutoArray (  )  [inline, protected]
template<class Alloc>
PRBool nsTArray_base< Alloc >::IsEmpty (  )  const [inline]
template<class Alloc>
size_type nsTArray_base< Alloc >::Length (  )  const [inline]
template<class Alloc>
Header** nsTArray_base< Alloc >::PtrToHdr (  )  [inline, protected]
template<class Alloc >
void nsTArray_base< Alloc >::ShiftData ( index_type  start,
size_type  oldLen,
size_type  newLen,
size_type  elemSize 
) [protected]
template<class Alloc >
void nsTArray_base< Alloc >::ShrinkCapacity ( size_type  elemSize  )  [protected]
template<class Alloc >
template<class Allocator >
PRBool nsTArray_base< Alloc >::SwapArrayElements ( nsTArray_base< Allocator > &  other,
size_type  elemSize 
) [protected]
template<class Alloc>
PRBool nsTArray_base< Alloc >::UsesAutoArrayBuffer (  )  [inline, protected]

Friends And Related Function Documentation

template<class Alloc>
nsTArray_base< Alloc >::nsTArray_base [friend]

Member Data Documentation

template<class Alloc>
Header* nsTArray_base< Alloc >::mHdr [protected]

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