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 Fri Mar 7 20:02:49 2003 for ICU 2.1 by doxygen1.3-rc3