A list of unary predicates (tests) on scalars. Includes a number of standard comparison predicates (eg, "less", "greater", ...) More...
Public Types | |
| enum | opType { EQUAL, NOT_EQUAL, LESS, LESS_EQ, GREATER, GREATER_EQ, ALWAYS, NEVER } |
| Enumerations for some standard comparison predicates. More... | |
| typedef std::function< bool(Foam::scalar)> | unary |
| The unary function type for testing a scalar. More... | |
Public Types inherited from List< std::function< bool(Foam::scalar)> > | |
| typedef SubList< std::function< bool(Foam::scalar)> > | subList |
| Declare type of subList. More... | |
Public Member Functions | |
| scalars (std::initializer_list< std::pair< word, scalar >> entries) | |
| Construct from an initializer list of (opName opValue) tuples. More... | |
| scalars (const UList< Tuple2< word, scalar >> &entries) | |
| Copy construct from a list of (opName opValue) tuples. More... | |
| scalars (Istream &is) | |
| Construct from Istream, from list of (opName opValue) tuples. More... | |
| ~scalars ()=default | |
| Destructor. More... | |
| label | find (const scalar value, label pos=0) const |
| Index of the first match for the value. More... | |
| label | rfind (const scalar value, label pos=-1) const |
| Index of the last match for the value. More... | |
| bool | found (const scalar value, label pos=0) const |
| True if the value matches any in the list. More... | |
| bool | match (const scalar &value) const |
| Match any condition in the list. More... | |
| bool | matchAny (const scalar &value) const |
| Match any condition in the list. More... | |
| bool | matchAll (const scalar &value) const |
| Match all conditions in the list. More... | |
| labelList | matching (const scalar &value) const |
| Extract list indices for all matches. More... | |
| labelList | matching (const UList< scalar > &input, const bool invert=false) const |
| Extract list indices for all matches. More... | |
| bool | operator() (const scalar &value) const |
| Identical to found(), match(), for use as a predicate. More... | |
Public Member Functions inherited from List< std::function< bool(Foam::scalar)> > | |
| constexpr | List () noexcept |
| Null constructor. More... | |
| List (const label len) | |
| Construct with given size. More... | |
| List (const label len, const std::function< bool(Foam::scalar)> &val) | |
| Construct with given size and value for all elements. More... | |
| List (const label len, const zero) | |
| Construct with given size initializing all elements to zero. More... | |
| List (const one, const std::function< bool(Foam::scalar)> &val) | |
| Construct with length=1, copying the value as the only content. More... | |
| List (const one, std::function< bool(Foam::scalar)> &&val) | |
| Construct with length=1, moving the value as the only content. More... | |
| List (const one, const zero) | |
| Construct with length=1, initializing content to zero. More... | |
| List (const List< std::function< bool(Foam::scalar)> > &a) | |
| Copy construct from list. More... | |
| List (const UList< std::function< bool(Foam::scalar)> > &a) | |
| Copy construct contents from list. More... | |
| List (List< std::function< bool(Foam::scalar)> > &a, bool reuse) | |
| Construct as copy or re-use as specified. More... | |
| List (const UList< std::function< bool(Foam::scalar)> > &list, const labelUList &indices) | |
| Copy construct subset of list. More... | |
| List (const UList< std::function< bool(Foam::scalar)> > &list, const FixedList< label, N > &indices) | |
| Copy construct subset of list. More... | |
| List (InputIterator begIter, InputIterator endIter) | |
| Construct given begin/end iterators. More... | |
| List (const FixedList< std::function< bool(Foam::scalar)>, N > &list) | |
| Construct as copy of FixedList<T, N> More... | |
| List (const PtrList< std::function< bool(Foam::scalar)> > &list) | |
| Construct as copy of PtrList<T> More... | |
| List (const SLList< std::function< bool(Foam::scalar)> > &list) | |
| Construct as copy of SLList<T> More... | |
| List (const IndirectListBase< std::function< bool(Foam::scalar)>, Addr > &list) | |
| Construct as copy of IndirectList contents. More... | |
| List (std::initializer_list< std::function< bool(Foam::scalar)> > list) | |
| Construct from an initializer list. More... | |
| List (List< std::function< bool(Foam::scalar)> > &&list) | |
| Move construct from List. More... | |
| List (DynamicList< std::function< bool(Foam::scalar)>, SizeMin > &&list) | |
| Move construct from DynamicList. More... | |
| List (SortableList< std::function< bool(Foam::scalar)> > &&list) | |
| Move construct from SortableList. More... | |
| List (SLList< std::function< bool(Foam::scalar)> > &&list) | |
| Move construct from SLList. More... | |
| List (Istream &is) | |
| Construct from Istream. More... | |
| autoPtr< List< std::function< bool(Foam::scalar)> > > | clone () const |
| Clone. More... | |
| ~List () | |
| Destructor. More... | |
| void | resize (const label newSize) |
| Adjust allocated size of list. More... | |
| void | resize (const label newSize, const std::function< bool(Foam::scalar)> &val) |
| Adjust allocated size of list and set val for new elements. More... | |
| void | resize (const label newSize) |
| void | setSize (const label newSize) |
| Alias for resize(const label) More... | |
| void | setSize (const label newSize, const std::function< bool(Foam::scalar)> &val) |
| Alias for resize(const label, const T&) More... | |
| void | clear () |
| Clear the list, i.e. set size to zero. More... | |
| void | append (const std::function< bool(Foam::scalar)> &val) |
| Append an element at the end of the list. More... | |
| void | append (std::function< bool(Foam::scalar)> &&val) |
| Move append an element at the end of the list. More... | |
| void | append (const UList< std::function< bool(Foam::scalar)> > &list) |
| Append a List to the end of this list. More... | |
| void | append (const IndirectListBase< std::function< bool(Foam::scalar)>, Addr > &list) |
| Append IndirectList contents at the end of this list. More... | |
| void | transfer (List< std::function< bool(Foam::scalar)> > &list) |
| void | transfer (DynamicList< std::function< bool(Foam::scalar)>, SizeMin > &list) |
| void | transfer (SortableList< std::function< bool(Foam::scalar)> > &list) |
| std::function< bool(Foam::scalar)> & | newElmt (const label i) |
| void | operator= (const UList< std::function< bool(Foam::scalar)> > &a) |
| Assignment to UList operator. Takes linear time. More... | |
| void | operator= (const List< std::function< bool(Foam::scalar)> > &list) |
| Assignment operator. Takes linear time. More... | |
| void | operator= (const SLList< std::function< bool(Foam::scalar)> > &list) |
| Assignment to SLList operator. Takes linear time. More... | |
| void | operator= (const IndirectListBase< std::function< bool(Foam::scalar)>, Addr > &list) |
| Assignment from IndirectList. Takes linear time. More... | |
| void | operator= (const FixedList< std::function< bool(Foam::scalar)>, N > &list) |
| Copy assignment from FixedList. More... | |
| void | operator= (std::initializer_list< std::function< bool(Foam::scalar)> > list) |
| Assignment to an initializer list. More... | |
| void | operator= (const std::function< bool(Foam::scalar)> &val) |
| Assignment of all entries to the given value. More... | |
| void | operator= (const zero) |
| Assignment of all entries to zero. More... | |
| void | operator= (List< std::function< bool(Foam::scalar)> > &&list) |
| Move assignment. Takes constant time. More... | |
| void | operator= (DynamicList< std::function< bool(Foam::scalar)>, SizeMin > &&list) |
| Move assignment. Takes constant time. More... | |
| void | operator= (SortableList< std::function< bool(Foam::scalar)> > &&list) |
| Move assignment. Takes constant time. More... | |
| void | operator= (SLList< std::function< bool(Foam::scalar)> > &&list) |
| Move assignment. Takes constant time. More... | |
| void | shallowCopy (const UList< std::function< bool(Foam::scalar)> > &)=delete |
| No shallowCopy permitted. More... | |
| std::enable_if< std::is_same< bool, TypeT >::value, bool >::type | set (const label i, bool val=true) |
| A bitSet::set() method for a list of bool. More... | |
Static Public Member Functions | |
| static unary | equalOp (const scalar opVal, const scalar tol=VSMALL) |
| Compare for equality, with specified tolerance (non-negative) More... | |
| static unary | notEqualOp (const scalar opVal, const scalar tol=VSMALL) |
| Compare for inequality, with specified tolerance (non-negative) More... | |
| static unary | lessOp (const scalar opVal) |
| Test if value is 'less' than prescribed. More... | |
| static unary | lessEqOp (const scalar opVal) |
| Test if value is 'less_equal' to prescribed. More... | |
| static unary | greaterOp (const scalar opVal) |
| static unary | greaterEqOp (const scalar opVal) |
| Test if value is 'greater_equal' to prescribed. More... | |
| static unary | trueOp () |
| Predicate that always returns true. More... | |
| static unary | falseOp () |
| Predicate that always returns false. More... | |
| static unary | andOp (const unary &test1, const unary &test2) |
| Combine unary tests as an AND operation. More... | |
| static unary | orOp (const unary &test1, const unary &test2) |
| Combine unary tests as an OR operation. More... | |
| static unary | operation (const opType op, const scalar opVal, const scalar tol=VSMALL) |
| Standard comparison method by type. More... | |
| static unary | operation (const word &opName, const scalar opVal, const scalar tol=VSMALL) |
| Standard comparison method by name. More... | |
| static unary | operation (const Tuple2< word, scalar > &op, const scalar tol=VSMALL) |
| Standard comparison method by (name, value) More... | |
| static unary | operation (const std::pair< word, scalar > &op, const scalar tol=VSMALL) |
| Standard comparison method by (name, value) More... | |
Static Public Member Functions inherited from List< std::function< bool(Foam::scalar)> > | |
| static const List< std::function< bool(Foam::scalar)> > & | null () |
| Return a null List. More... | |
Static Public Attributes | |
| static const Enum< opType > | opNames |
| Names for the opType enumeration. More... | |
A list of unary predicates (tests) on scalars. Includes a number of standard comparison predicates (eg, "less", "greater", ...)
Definition at line 66 of file scalarPredicates.H.
The unary function type for testing a scalar.
Definition at line 75 of file scalarPredicates.H.
| enum opType |
Enumerations for some standard comparison predicates.
| Enumerator | |
|---|---|
| EQUAL | "eq", "equal" |
| NOT_EQUAL | "neq", "notEqual" |
| LESS | "lt", "less" |
| LESS_EQ | "le", "lessEq" |
| GREATER | "gt", "greater" |
| GREATER_EQ | "ge", "greaterEq" |
| ALWAYS | Always matches. |
| NEVER | Never matches. |
Definition at line 78 of file scalarPredicates.H.
Construct from an initializer list of (opName opValue) tuples.
Definition at line 182 of file scalarPredicates.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::hasBadEntries(), scalars::operation(), and Foam::printBadEntries().
Copy construct from a list of (opName opValue) tuples.
Definition at line 213 of file scalarPredicates.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::hasBadEntries(), scalars::operation(), and Foam::printBadEntries().
Construct from Istream, from list of (opName opValue) tuples.
Definition at line 243 of file scalarPredicates.C.
|
default |
Destructor.
Compare for equality, with specified tolerance (non-negative)
Definition at line 98 of file scalarPredicates.H.
References Foam::mag().
|
inlinestatic |
Compare for inequality, with specified tolerance (non-negative)
Definition at line 112 of file scalarPredicates.H.
References Foam::mag().
Test if value is 'less' than prescribed.
Definition at line 125 of file scalarPredicates.H.
Test if value is 'less_equal' to prescribed.
Definition at line 135 of file scalarPredicates.H.
Test if value is 'greater' than prescribed Compare scalar values for inequality
Definition at line 146 of file scalarPredicates.H.
|
inlinestatic |
Test if value is 'greater_equal' to prescribed.
Definition at line 156 of file scalarPredicates.H.
|
inlinestatic |
Predicate that always returns true.
Definition at line 168 of file scalarPredicates.H.
|
inlinestatic |
Predicate that always returns false.
Definition at line 174 of file scalarPredicates.H.
Combine unary tests as an AND operation.
Definition at line 183 of file scalarPredicates.H.
Referenced by parcelSelection::calculateFilter().
Combine unary tests as an OR operation.
Definition at line 192 of file scalarPredicates.H.
Referenced by parcelSelection::calculateFilter().
Standard comparison method by type.
Referenced by parcelSelection::calculateFilter(), Foam::operator>>(), and scalars::scalars().
|
inlinestatic |
Standard comparison method by name.
Definition at line 31 of file scalarPredicatesI.H.
|
inlinestatic |
Standard comparison method by (name, value)
Definition at line 42 of file scalarPredicatesI.H.
References Tuple2< T1, T2 >::first(), and Tuple2< T1, T2 >::second().
|
inlinestatic |
Standard comparison method by (name, value)
Definition at line 52 of file scalarPredicatesI.H.
| Foam::label find | ( | const scalar | value, |
| label | pos = 0 |
||
| ) | const |
Index of the first match for the value.
Any occurrences before the start pos are ignored. Linear search.
Definition at line 254 of file scalarPredicates.C.
References Foam::pos().
| Foam::label rfind | ( | const scalar | value, |
| label | pos = -1 |
||
| ) | const |
Index of the last match for the value.
Any occurrences after the end pos are ignored. Linear search.
Definition at line 281 of file scalarPredicates.C.
References Foam::pos().
|
inline |
True if the value matches any in the list.
Any occurrences before the start pos are ignored. Linear search.
Definition at line 64 of file scalarPredicatesI.H.
References Foam::ListOps::find(), and Foam::pos().
|
inline |
Match any condition in the list.
Definition at line 73 of file scalarPredicatesI.H.
References scalars::matchAny().
|
inline |
Match any condition in the list.
Definition at line 79 of file scalarPredicatesI.H.
Referenced by scalars::match().
|
inline |
Match all conditions in the list.
Definition at line 93 of file scalarPredicatesI.H.
|
inline |
Extract list indices for all matches.
Definition at line 108 of file scalarPredicatesI.H.
References Foam::BitOps::count(), and List< T >::resize().
|
inline |
Extract list indices for all matches.
| input | A list of scalar inputs to test |
| invert | invert the matching logic |
Definition at line 131 of file scalarPredicatesI.H.
References Foam::BitOps::count(), Foam::invert(), Foam::stringOps::match(), List< T >::resize(), and UList< T >::size().
|
inline |
Identical to found(), match(), for use as a predicate.
Definition at line 157 of file scalarPredicatesI.H.
References found.
|
static |
Names for the opType enumeration.
Definition at line 91 of file scalarPredicates.H.
Referenced by Foam::hasBadEntries(), and Foam::printBadEntries().