Dendro
5.01
Dendro in Greek language means tree. The Dendro library is a large scale (262K cores on ORNL's Titan) distributed memory adaptive octree framework. The main goal of Dendro is to perform large scale multiphysics simulations efficeiently in mordern supercomputers. Dendro consists of efficient parallel data structures and algorithms to perform variational ( finite element) methods and finite difference mthods on 2:1 balanced arbitary adaptive octrees which enables the users to perform simulations raning from black holes (binary black hole mergers) to blood flow in human body, where applications ranging from relativity, astrophysics to biomedical engineering.
|
a template for a bidirectional iterator for the basic_json class More...
#include <json.hpp>
Public Types | |
using | iterator_category = std::bidirectional_iterator_tag |
using | value_type = typename BasicJsonType::value_type |
the type of the values when the iterator is dereferenced | |
using | difference_type = typename BasicJsonType::difference_type |
a type to represent differences between iterators | |
using | pointer = typename std::conditional< std::is_const< BasicJsonType >::value, typename BasicJsonType::const_pointer, typename BasicJsonType::pointer >::type |
defines a pointer to the type iterated over (value_type) | |
using | reference = typename std::conditional< std::is_const< BasicJsonType >::value, typename BasicJsonType::const_reference, typename BasicJsonType::reference >::type |
defines a reference to the type iterated over (value_type) | |
Public Member Functions | |
iter_impl ()=default | |
default constructor More... | |
iter_impl (pointer object) noexcept | |
constructor for a given JSON instance More... | |
iter_impl (const iter_impl< typename std::remove_const< BasicJsonType >::type > &other) noexcept | |
converting constructor More... | |
iter_impl & | operator= (const iter_impl< typename std::remove_const< BasicJsonType >::type > &other) noexcept |
converting assignment More... | |
reference | operator* () const |
return a reference to the value pointed to by the iterator More... | |
pointer | operator-> () const |
dereference the iterator More... | |
iter_impl const | operator++ (int) |
post-increment (it++) More... | |
iter_impl & | operator++ () |
pre-increment (++it) More... | |
iter_impl const | operator-- (int) |
post-decrement (it–) More... | |
iter_impl & | operator-- () |
pre-decrement (–it) More... | |
bool | operator== (const iter_impl &other) const |
comparison: equal More... | |
bool | operator!= (const iter_impl &other) const |
comparison: not equal More... | |
bool | operator< (const iter_impl &other) const |
comparison: smaller More... | |
bool | operator<= (const iter_impl &other) const |
comparison: less than or equal More... | |
bool | operator> (const iter_impl &other) const |
comparison: greater than More... | |
bool | operator>= (const iter_impl &other) const |
comparison: greater than or equal More... | |
iter_impl & | operator+= (difference_type i) |
add to iterator More... | |
iter_impl & | operator-= (difference_type i) |
subtract from iterator More... | |
iter_impl | operator+ (difference_type i) const |
add to iterator More... | |
iter_impl | operator- (difference_type i) const |
subtract from iterator More... | |
difference_type | operator- (const iter_impl &other) const |
return difference More... | |
reference | operator[] (difference_type n) const |
access to successor More... | |
object_t::key_type | key () const |
return the key of an object iterator More... | |
reference | value () const |
return the value of an iterator More... | |
Friends | |
iter_impl | operator+ (difference_type i, const iter_impl &it) |
addition of distance and iterator More... | |
a template for a bidirectional iterator for the basic_json class
This class implements a both iterators (iterator and const_iterator) for the basic_json class.
The class satisfies the following concept requirements:
using nlohmann::detail::iter_impl< BasicJsonType >::iterator_category = std::bidirectional_iterator_tag |
The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. The C++ Standard has never required user-defined iterators to derive from std::iterator. A user-defined iterator should provide publicly accessible typedefs named iterator_category, value_type, difference_type, pointer, and reference. Note that value_type is required to be non-const, even for constant iterators.
|
default |
default constructor
allow basic_json to access private members
|
inlineexplicitnoexcept |
constructor for a given JSON instance
[in] | object | pointer to a JSON object for this iterator |
m_object != nullptr
.
|
inlinenoexcept |
converting constructor
[in] | other | non-const iterator to copy from |
|
inline |
return the key of an object iterator
m_object != nullptr
.
|
inline |
comparison: not equal
m_object != nullptr
.
|
inline |
return a reference to the value pointed to by the iterator
m_object != nullptr
.
|
inline |
add to iterator
m_object != nullptr
.
|
inline |
post-increment (it++)
m_object != nullptr
.
|
inline |
pre-increment (++it)
m_object != nullptr
.
|
inline |
add to iterator
m_object != nullptr
.
|
inline |
subtract from iterator
m_object != nullptr
.
|
inline |
return difference
m_object != nullptr
.
|
inline |
post-decrement (it–)
m_object != nullptr
.
|
inline |
pre-decrement (–it)
m_object != nullptr
.
|
inline |
subtract from iterator
m_object != nullptr
.
|
inline |
dereference the iterator
m_object != nullptr
.
|
inline |
comparison: smaller
m_object != nullptr
.
|
inline |
comparison: less than or equal
m_object != nullptr
.
|
inlinenoexcept |
converting assignment
[in,out] | other | non-const iterator to copy from |
|
inline |
comparison: equal
m_object != nullptr
.
|
inline |
comparison: greater than
m_object != nullptr
.
|
inline |
comparison: greater than or equal
m_object != nullptr
.
|
inline |
access to successor
m_object != nullptr
.
|
inline |
return the value of an iterator
m_object != nullptr
.
|
friend |
addition of distance and iterator
m_object != nullptr
.