Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

UnicodeFilterLogic Class Reference

UnicodeFilterLogic provides logical operators on UnicodeFilter objects. More...

#include <unifltlg.h>


Static Public Member Functions

UnicodeFiltercreateNot (const UnicodeFilter *f)
 Returns a UnicodeFilter that implements the inverse of the given filter.

UnicodeFiltercreateAnd (const UnicodeFilter *f, const UnicodeFilter *g)
 Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.

UnicodeFiltercreateAdoptingAnd (UnicodeFilter *adoptedF, UnicodeFilter *adoptedG)
 Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.

UnicodeFiltercreateOr (const UnicodeFilter *f, const UnicodeFilter *g)
 Returns a UnicodeFilter that implements a short circuit OR of the result of the two given filters.


Detailed Description

UnicodeFilterLogic provides logical operators on UnicodeFilter objects.

This class cannot be instantiated; it consists only of static methods. The static methods return filter objects that perform logical inversion (not), intersection (and), or union (or) of the given filter objects.

If a UnicodeFilter* f is passed in, where f == NULL, then that is treated as a filter that contains all Unicode characters. Therefore, createNot(NULL) returns a filter that contains no Unicode characters. Likewise, createAnd(g, NULL) returns g->clone(), and createAnd(NULL, NULL) returns NULL.


Member Function Documentation

UnicodeFilter* UnicodeFilterLogic::createAdoptingAnd UnicodeFilter adoptedF,
UnicodeFilter adoptedG
[static]
 

Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.

That is, if f.contains() is false, then g.contains() is not called, and contains() returns false.

Parameters:
f may be NULL; this argument is adopted
g may be NULL; this argument is adopted
Returns:
will be NULL if and only if f == g == NULL

UnicodeFilter* UnicodeFilterLogic::createAnd const UnicodeFilter f,
const UnicodeFilter g
[static]
 

Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.

That is, if f.contains() is false, then g.contains() is not called, and contains() returns false.

Parameters:
f may be NULL
g may be NULL
Returns:
will be NULL if and only if f == g == NULL

UnicodeFilter* UnicodeFilterLogic::createNot const UnicodeFilter f  )  [static]
 

Returns a UnicodeFilter that implements the inverse of the given filter.

Parameters:
f may be NULL
Returns:
always non-NULL

UnicodeFilter* UnicodeFilterLogic::createOr const UnicodeFilter f,
const UnicodeFilter g
[static]
 

Returns a UnicodeFilter that implements a short circuit OR of the result of the two given filters.

That is, if f.contains() is true, then g.contains() is not called, and contains() returns true.

Parameters:
f may be NULL
g may be NULL
Returns:
will be NULL if and only if f == g == NULL


The documentation for this class was generated from the following file:
Generated on Sun Jan 18 22:55:45 2004 for ICU 2.1 by doxygen 1.3.4