HashTableCore Class Reference

Bits that are independent of HashTable template parameters. More...

Inherited by HashTable< T, Key, Hash >, HashTable< autoPtr< aspectRatioModel >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< dragModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< heatTransferModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< liftModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< phaseTransferModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< turbulentDispersionModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< virtualMassModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< BlendedInterfacialModel< wallLubricationModel > >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< blendingMethod > >, HashTable< autoPtr< interfaceCompositionModel >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< multiphaseInter::phaseModel > >, HashTable< autoPtr< multiphaseInter::surfaceTensionModel >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< phasePair >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< porousModel >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< reactingMultiphaseEuler::surfaceTensionModel >, phasePairKey, phasePairKey::hash >, HashTable< autoPtr< reflectionModel >, phasePairKey, phasePairKey::hash >, HashTable< const GeometricField< Type, fvPatchField, volMesh > *>, HashTable< const regIOobject * >, HashTable< DataType, KeyType >, HashTable< edge >, HashTable< Foam::autoPtr< Foam::blendingMethod > >, HashTable< Foam::autoPtr< Foam::multiphaseInter::interfaceCompositionModel > >, HashTable< Foam::dimensioned >, HashTable< Foam::DynamicList< Foam::instant >, Foam::fileName >, HashTable< Foam::entry *>, HashTable< Foam::expressions::exprResult >, HashTable< Foam::expressions::exprResultDelayed >, HashTable< Foam::expressions::exprResultGlobals::Table >, HashTable< Foam::expressions::exprString >, HashTable< Foam::functionObjects::forceCoeffs::coeffDesc >, HashTable< Foam::HashTable< Foam::string > >, HashTable< Foam::HashTable< variantOutput > >, HashTable< Foam::List >, HashTable< Foam::List, Foam::fileName >, HashTable< Foam::Pair< bool > >, HashTable< Foam::Pair< extremaData > >, HashTable< Foam::phase *>, HashTable< Foam::phaseModel *>, HashTable< Foam::refPtr< Foam::Function1< Foam::vector > > >, HashTable< Foam::refPtr< Foam::Function1< scalar > > >, HashTable< Foam::string >, HashTable< Foam::string, label, Foam::Hash< label > >, HashTable< Foam::Tuple2< label, Foam::DynamicList< label > > >, HashTable< Foam::vtk::seriesWriter, Foam::fileName >, HashTable< Foam::word >, HashTable< Foam::zero, Key, Hash >, HashTable< int >, HashTable< interfaceThetaProps, multiphaseMixtureThermo::interfacePair, multiphaseMixtureThermo::interfacePair::hash >, HashTable< interfaceThetaProps, multiphaseSystem::interfacePair, multiphaseSystem::interfacePair::symmHash >, HashTable< interfaceThetaProps, phasePairKey, phasePairKey::hash >, HashTable< label >, HashTable< label, extendedFeatureEdgeMesh::edgeStatus, Hash< label > >, HashTable< label, Foam::string >, HashTable< label, labelPair, Foam::Hash< labelPair > >, HashTable< List< specieElement > >, HashTable< Pair< autoPtr< BlendedInterfacialModel< heatTransferModel > > >, phasePairKey, phasePairKey::hash >, HashTable< Pair< autoPtr< BlendedInterfacialModel< massTransferModel > > >, phasePairKey, phasePairKey::hash >, HashTable< phase >, HashTable< phaseModel *>, HashTable< regIOobject *>, HashTable< scalar >, HashTable< scalar, interfacePair, interfacePair::hash >, HashTable< scalar, interfacePair, interfacePair::symmHash >, HashTable< scalar, phasePairKey, phasePairKey::hash >, HashTable< simpleObjectRegistryEntry *>, HashTable< statistic >, HashTable< std::pair< bool, int > >, HashTable< std::pair< Foam::word, int > >, HashTable< surfaceScalarField >, HashTable< surfaceZonesInfo::faceZoneType >, HashTable< T *, Key, Hash >, HashTable< T *>, HashTable< T, edge, Hash< edge > >, HashTable< T, label, Hash< label > >, HashTable< unsigned >, HashTable< volScalarField::Internal >, and HashTable< wordList >.

Classes

class  const_iterator_pair
 Factory class for creating a begin/end pair for any const iterator type, normally associated with a HashTable. More...
 

Public Member Functions

 ClassName ("HashTable")
 Declare type-name (with debug switch) More...
 
constexpr HashTableCore () noexcept=default
 Default construct. More...
 

Static Public Member Functions

static label canonicalSize (const label size) noexcept
 Return a canonical (power-of-two) of the requested size. More...
 

Static Public Attributes

static constexpr int32_t maxTableSize = (1 << (32-3))
 Maximum allowable internal table size (must be a power of two!). More...
 

Detailed Description

Bits that are independent of HashTable template parameters.

Template invariant parts of hash table implementation.

Source files

Definition at line 52 of file HashTableCore.H.

Constructor & Destructor Documentation

◆ HashTableCore()

constexpr HashTableCore ( )
defaultnoexcept

Default construct.

Member Function Documentation

◆ canonicalSize()

Foam::label canonicalSize ( const label  size)
staticnoexcept

Return a canonical (power-of-two) of the requested size.

Definition at line 39 of file HashTableCore.C.

References minTableSize, and n.

◆ ClassName()

ClassName ( "HashTable"  )

Declare type-name (with debug switch)

Member Data Documentation

◆ maxTableSize

constexpr int32_t maxTableSize = (1 << (32-3))
static

Maximum allowable internal table size (must be a power of two!).

  • approximately (INT32_MAX/4) => 0x20000000
  • don't need an int64 version

Definition at line 60 of file HashTableCore.H.


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