libUTL++
FSobjectFilter.h
1 #pragma once
2 
4 
5 #include <libutl/Array.h>
6 #include <libutl/Predicate.h>
7 
9 
10 UTL_NS_BEGIN;
11 
13 
24 
26 class FSobjectFilter : public Predicate
27 {
30 
31 public:
32  virtual void copy(const Object& rhs);
33 
34  virtual void serialize(Stream& stream, uint_t io, uint_t mode = ser_default);
35 
42  void add(uint_t field, uint_t op, const Object* rhs);
43 
45  void clear();
46 
47  virtual bool eval(const Object* object) const;
48 
49 private:
50  Array _exprs;
51 };
52 
54 
55 UTL_NS_END;
#define UTL_CLASS_DEFID
Default init() and deInit() (which are merely place-holders).
Definition: macros.h:532
void serialize(bool &b, Stream &stream, uint_t io, uint_t mode=ser_default)
Serialize a boolean.
default representation (via getSerializeMode())
Definition: util.h:75
#define UTL_CLASS_DECL(DC, BC)
Declaration of standard UTL++ functionality for a non-template class.
Definition: macros.h:688
SortedCollection that stores objects in an array.
Definition: Array.h:116
void copy(T *dest, const T *src, size_t len)
Copy one array of objects to another.
Definition: util_inl.h:690
Logical predicate abstraction.
Definition: Predicate.h:26
Filesystem object filter.
unsigned int uint_t
Unsigned integer.
Definition: types.h:59
Stream I/O abstraction.
Definition: Stream.h:68
Root of UTL++ class hierarchy.
Definition: Object.h:52