NimbleSM
NimbleSM is a solid mechanics simulation code for dynamic systems
|
Go to the source code of this file.
Classes | |
struct | nimble::quanta::indexer_t< list_t > |
struct | nimble::quanta::indexer_t< T * > |
class | nimble::quanta::invoke_counter_t< int_t > |
Namespaces | |
namespace | nimble |
namespace | nimble::quanta |
Typedefs | |
template<class list_t> | |
using | nimble::quanta::iterated_t = decltype(*std::begin(declref<list_t>())) |
template<class list_t> | |
using | nimble::quanta::elem_t = typename std::decay<iterated_t<list_t>>::type |
template<class F, class... Args> | |
using | nimble::quanta::return_t = decltype(declref<F>()(declval_exact<Args>()...)) |
template<class F, class... list_t> | |
using | nimble::quanta::transformed_iterated_t = return_t<F, iterated_t<list_t>...> |
Functions | |
template<class T> | |
T | nimble::quanta::declval_exact () noexcept |
template<class T> | |
std::remove_reference< T >::type & | nimble::quanta::declref () noexcept |
template<class T> | |
auto | nimble::quanta::len (T &&obj) -> decltype(obj.size()) |
template<class T> | |
indexer_t< T > | nimble::quanta::make_indexer (T &list) |
template<class T> | |
indexer_t< T * > | nimble::quanta::make_indexer (T *ptr) |
template<class int_t> | |
invoke_counter_t< int_t > | nimble::quanta::make_counter (int_t initial=0) |
template<class list_t, class F> | |
void | nimble::quanta::remap (list_t &list, F &&func) |