Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | 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

static UnicodeFiltercreateNot (const UnicodeFilter *f)
 Returns a UnicodeFilter that implements the inverse of the given filter.
static UnicodeFiltercreateAnd (const UnicodeFilter *f, const UnicodeFilter *g)
 Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.
static UnicodeFiltercreateAdoptingAnd (UnicodeFilter *adoptedF, UnicodeFilter *adoptedG)
 Returns a UnicodeFilter that implements a short circuit AND of the result of the two given filters.
static 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

static 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

static 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

static 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

static 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 Sat Jan 22 03:20:01 2005 for ICU 2.1 by  doxygen 1.4.0