Galois
|
#include <algorithm>
#include <iterator>
#include <utility>
#include <cassert>
#include <vector>
#include <set>
#include <deque>
#include <map>
#include <list>
#include <string>
#include <sstream>
#include "galois/config.h"
#include "galois/PriorityQueue.h"
Go to the source code of this file.
Classes | |
struct | galois::gstl::StrMaker< T > |
struct | galois::gstl::StrMaker< std::string > |
struct | galois::gstl::StrMaker< Str > |
struct | galois::gstl::StrMaker< const char * > |
class | galois::IterRange< I > |
class | galois::SerFIFO< T, C > |
class | galois::SerStack< T, C > |
Namespaces | |
galois | |
The Galois namespace containing all Galois structures and functions. | |
galois::gstl | |
Standard library structures that use Galois allocators. | |
Typedefs | |
template<typename T > | |
using | galois::gstl::Pow2Alloc = typename runtime::Pow_2_BlockAllocator< T > |
[define Pow_2_VarSizeAlloc] More... | |
template<typename T > | |
using | galois::gstl::FixedSizeAlloc = typename runtime::FixedSizeAllocator< T > |
[define Pow_2_VarSizeAlloc] More... | |
template<typename T > | |
using | galois::gstl::Vector = std::vector< T, Pow2Alloc< T >> |
[STL vector using Pow_2_VarSizeAlloc] More... | |
template<typename T > | |
using | galois::gstl::Deque = std::deque< T, Pow2Alloc< T >> |
[STL vector using Pow_2_VarSizeAlloc] More... | |
template<typename T > | |
using | galois::gstl::List = std::list< T, FixedSizeAlloc< T >> |
template<typename T , typename C = std::less<T>> | |
using | galois::gstl::Set = std::set< T, C, FixedSizeAlloc< T >> |
template<typename K , typename V , typename C = std::less<K>> | |
using | galois::gstl::Map = std::map< K, V, C, FixedSizeAlloc< std::pair< const K, V >>> |
template<typename K , typename V , typename Hash = std::hash<K>, typename KeyEqual = std::equal_to<K>> | |
using | galois::gstl::UnorderedMap = std::unordered_map< K, V, Hash, KeyEqual, FixedSizeAlloc< std::pair< const K, V >>> |
template<typename T , typename C = std::less<T>> | |
using | galois::gstl::PQ = MinHeap< T, C, Vector< T >> |
using | galois::gstl::Str = std::basic_string< char, std::char_traits< char >, Pow2Alloc< char >> |
Functions | |
template<typename T > | |
Str | galois::gstl::makeStr (const T &x) |
template<typename I > | |
auto | galois::makeIterRange (const I &beg, const I &end) |
template<typename C > | |
auto | galois::makeIterRange (C &&cont) |
template<typename IterTy , class Distance > | |
IterTy | galois::safe_advance_dispatch (IterTy b, IterTy e, Distance n, std::random_access_iterator_tag) |
template<typename IterTy , class Distance > | |
IterTy | galois::safe_advance_dispatch (IterTy b, IterTy e, Distance n, std::input_iterator_tag) |
template<typename IterTy , class Distance > | |
IterTy | galois::safe_advance (IterTy b, IterTy e, Distance n) |
Like std::advance but returns end if end is closer than the advance amount. More... | |
template<typename IterTy > | |
IterTy | galois::split_range (IterTy b, IterTy e) |
Finds the midpoint of a range. More... | |
template<typename IterTy , typename std::enable_if<!std::is_integral< IterTy >::value >::type * = nullptr> | |
std::pair< IterTy, IterTy > | galois::block_range (IterTy b, IterTy e, unsigned id, unsigned num) |
Returns a continuous block from the range based on the number of divisions and the id of the block requested. More... | |
template<typename IntTy , typename std::enable_if< std::is_integral< IntTy >::value >::type * = nullptr> | |
std::pair< IntTy, IntTy > | galois::block_range (IntTy b, IntTy e, unsigned id, unsigned num) |
template<typename I > | |
std::enable_if_t <!std::is_scalar < internal::Val_ty< I > >::value > | galois::uninitialized_destroy (I first, I last) |
Destroy a range. More... | |
template<class I > | |
std::enable_if_t < std::is_scalar < internal::Val_ty< I > >::value > | galois::uninitialized_destroy (I, I) |