Loading...
Searching...
No Matches
ListsRefWrap< V > Class Template Reference

Expression wrap of multiple lists. More...

#include <ListExpression.H>

Inheritance diagram for ListsRefWrap< V >:
Collaboration diagram for ListsRefWrap< V >:

Classes

struct  const_iterator
struct  iterator

Public Types

using value_type = typename V::value_type
typedef ListsRefWrap< Vthis_type
typedef value_typepointer
typedef value_typereference
typedef const value_typeconst_pointer
typedef const value_typeconst_reference
typedef label difference_type

Public Member Functions

 ListsRefWrap ()=delete
 ListsRefWrap (UList< V * > &d)
 ListsRefWrap (List< V * > &&d)
template<class Container>
 ListsRefWrap (Container &ds)
template<class Container, class ElemOp>
 ListsRefWrap (Container &ds, const ElemOp &insertOp)
void push_back (V *vec)
void resize_nocopy (const label)
 Dummy resizing so we can pass *this to ListExpression::evaluate. Maybe do resizing externally?
template<typename E, class Container>
void evaluate (ListsRefWrap< E > &exprWarp, const Container &ds)
 Assignment.
template<typename E>
void operator= (const ListExpression< E > &expr)
value_type operator[] (const label i) const
value_typeoperator[] (const label i)
value_typeoperator() (const label i, const label j)
label size () const
auto cbegin () const
auto cend () const
auto begin ()
auto end ()
Public Member Functions inherited from ListExpression< ListsRefWrap< V > >
auto operator[] (const label i) const
auto size () const noexcept
Container & fill (Container &lst) const
 Helper: assign to passed in list.
Container & evaluate (Container &lst) const
 Helper: assign to passed in list.

Static Public Attributes

static constexpr bool is_leaf = false
Static Public Attributes inherited from ListExpression< ListsRefWrap< V > >
static constexpr bool is_leaf

Detailed Description

template<class V>
class Foam::Expression::ListsRefWrap< V >

Expression wrap of multiple lists.

Definition at line 2495 of file ListExpression.H.

Member Typedef Documentation

◆ value_type

template<class V>
using value_type = typename V::value_type

Definition at line 2530 of file ListExpression.H.

◆ this_type

template<class V>
typedef ListsRefWrap<V> this_type

Definition at line 2531 of file ListExpression.H.

◆ pointer

template<class V>
typedef value_type* pointer

Definition at line 2645 of file ListExpression.H.

◆ reference

template<class V>
typedef value_type& reference

Definition at line 2646 of file ListExpression.H.

◆ const_pointer

template<class V>
typedef const value_type* const_pointer

Definition at line 2647 of file ListExpression.H.

◆ const_reference

template<class V>
typedef const value_type& const_reference

Definition at line 2648 of file ListExpression.H.

◆ difference_type

template<class V>
typedef label difference_type

Definition at line 2649 of file ListExpression.H.

Constructor & Destructor Documentation

◆ ListsRefWrap() [1/5]

template<class V>
ListsRefWrap ( )
delete

Referenced by evaluate().

Here is the caller graph for this function:

◆ ListsRefWrap() [2/5]

template<class V>
ListsRefWrap ( UList< V * > & d)
inline

Definition at line 2535 of file ListExpression.H.

◆ ListsRefWrap() [3/5]

template<class V>
ListsRefWrap ( List< V * > && d)
inline

Definition at line 2541 of file ListExpression.H.

◆ ListsRefWrap() [4/5]

template<class V>
template<class Container>
ListsRefWrap ( Container & ds)
inline

Definition at line 2548 of file ListExpression.H.

References n, and Foam::Expression::V().

Here is the call graph for this function:

◆ ListsRefWrap() [5/5]

template<class V>
template<class Container, class ElemOp>
ListsRefWrap ( Container & ds,
const ElemOp & insertOp )
inline

Definition at line 2562 of file ListExpression.H.

References n.

Member Function Documentation

◆ push_back()

template<class V>
void push_back ( V * vec)
inline

Definition at line 2587 of file ListExpression.H.

References Foam::Expression::V().

Here is the call graph for this function:

◆ resize_nocopy()

template<class V>
void resize_nocopy ( const label )
inline

Dummy resizing so we can pass *this to ListExpression::evaluate. Maybe do resizing externally?

Definition at line 2598 of file ListExpression.H.

◆ evaluate()

template<class V>
template<typename E, class Container>
void evaluate ( ListsRefWrap< E > & exprWarp,
const Container & ds )
inline

Assignment.

Definition at line 2604 of file ListExpression.H.

References ListsRefWrap(), and size().

Referenced by GeometricFieldExpression< E, IntExpr, UncoupledPatchExpr, CoupledPatchExpr, Type >::evaluate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

template<class V>
template<typename E>
void operator= ( const ListExpression< E > & expr)
inline

Definition at line 2619 of file ListExpression.H.

◆ operator[]() [1/2]

template<class V>
value_type operator[] ( const label i) const
inline

Definition at line 2624 of file ListExpression.H.

◆ operator[]() [2/2]

template<class V>
value_type & operator[] ( const label i)
inline

Definition at line 2629 of file ListExpression.H.

◆ operator()()

template<class V>
value_type & operator() ( const label i,
const label j )
inline

Definition at line 2636 of file ListExpression.H.

◆ size()

template<class V>
label size ( ) const
inline

Definition at line 2642 of file ListExpression.H.

Referenced by cend(), end(), and evaluate().

Here is the caller graph for this function:

◆ cbegin()

template<class V>
auto cbegin ( ) const
inline

Definition at line 2775 of file ListExpression.H.

◆ cend()

template<class V>
auto cend ( ) const
inline

Definition at line 2779 of file ListExpression.H.

References size().

Here is the call graph for this function:

◆ begin()

template<class V>
auto begin ( )
inline

Definition at line 2916 of file ListExpression.H.

◆ end()

template<class V>
auto end ( )
inline

Definition at line 2921 of file ListExpression.H.

References size().

Here is the call graph for this function:

Member Data Documentation

◆ is_leaf

template<class V>
bool is_leaf = false
staticconstexpr

Definition at line 2528 of file ListExpression.H.


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