Provided by: libbobcat-dev_3.19.01-1ubuntu1_amd64 

NAME
FBB::Hash - Various mapping template classes using hashing
SYNOPSIS
#include <bobcat/hash>
DESCRIPTION
The FBB:Hash group of template classes offer hashing-based mapping. Various variants are availabe, all
based on the facilities offered by the unordered_map.
The hash-map offered in the unordered_map container has a fairly complex construction interface, and Hash
is an attempt to simplify this part of its interface. In practice, hashing uses a textual key, which may
be std::string or char * based, and the keys may be used either case sensitively or case insensitively.
Hash merely requires its users to specify the map’s value type, while the key may be a char const * or
std::string, used case sensitively or case insensitively.
NAMESPACE
FBB
All constructors, members, operators and manipulators, mentioned in this man-page, are defined in the
namespace FBB.
INHERITS FROM
std::unordered_map, using various instantiations.
TYPE
All variants define value_type as the corresponding unordered_map value_type. In practice a value_type
defines a std::pair<Key, Value>, where Key represents the hash’s key-type and Value represents the hash’s
value type.
CONSTRUCTORS
Variants of the FBB::Hash container are available for char const * or std::string keys, used case
sensitively or case insensitively. All variants support default, copy, and move construction, support
construction from initializer lists and support construction from iterators defining a half-open range of
value_type values.
The following variants are available (showing their default constructors). Value refers to the value type
stored in the hash table.
o HashCharPtr<Value>():
this hash table uses case sensitive char const * keys;
o HashCharCasePtr<Value>():
this hash table uses case insensitive char const * keys;
o HashString<Value>():
this hash table uses case sensitive std::string keys;
o HashStringCase<Value>():
this hash table uses case insensitive std::string keys;
OVERLOADED OPERATOR
In addition to the index operator inherited from unordered_map the overloaded copy and move assignment
operators are available for all Hash containers.
MEMBER FUNCTIONS
All members of the unordered_map container are available, as Hash inherits from this template class.
EXAMPLE
#include <iostream>
#include <bobcat/hash>
using namespace std;
using namespace FBB;
pair<char const *, size_t> ap[] =
{
pair<char const *, size_t>("one", 1),
pair<char const *, size_t>("two", 2),
};
int main()
{
HashCharPtr<size_t> hcp;
HashCharPtr<size_t> hcp2(ap, ap + 2);
HashCharPtr<size_t> hcp3(hcp2);
hcp = hcp2;
cout << hcp2["one"] << endl;
}
FILES
bobcat/hash - defines the class interface
SEE ALSO
bobcat(7)
BUGS
None Reported.
DISTRIBUTION FILES
o bobcat_3.19.01-x.dsc: detached signature;
o bobcat_3.19.01-x.tar.gz: source archive;
o bobcat_3.19.01-x_i386.changes: change log;
o libbobcat1_3.19.01-x_*.deb: debian package holding the libraries;
o libbobcat1-dev_3.19.01-x_*.deb: debian package holding the libraries, headers and manual pages;
o http://sourceforge.net/projects/bobcat: public archive location;
BOBCAT
Bobcat is an acronym of `Brokken’s Own Base Classes And Templates’.
COPYRIGHT
This is free software, distributed under the terms of the GNU General Public License (GPL).
AUTHOR
Frank B. Brokken (f.b.brokken@rug.nl).
libbobcat-dev_3.19.01-x.tar.gz 2005-2013 FBB::Hash(3bobcat)