|
libUTL++
|
Boyer-Moore string search. More...
#include <BoyerMooreSearch.h>

Public Member Functions | |
| BoyerMooreSearch (bool owner, const T *pat, size_t patLen, uint_t A=uint_t_max) | |
| Constructor. More... | |
| const T * | find (const T *str, size_t strLen) const |
| Find the first occurrence of the search pattern in the given string. More... | |
| void | set (bool owner, const T *pat, size_t patLen) |
| Set a new pattern. More... | |
| size_t | length () const |
| Get the length of the pattern. More... | |
| bool | isOwner () const |
| Get the owner flag. More... | |
| void | setOwner (bool owner) |
| Get the owner flag. More... | |
Public Member Functions inherited from utl::Object | |
| void | clear () |
| Revert to initial state. More... | |
| virtual int | compare (const Object &rhs) const |
| Compare with another object. More... | |
| virtual void | copy (const Object &rhs) |
| Copy another instance. More... | |
| virtual void | vclone (const Object &rhs) |
| Make an exact copy of another instance. More... | |
| virtual void | steal (Object &rhs) |
| "Steal" the internal representation from another instance. More... | |
| virtual void | dump (Stream &os, uint_t level=uint_t_max) const |
| Dump a human-readable representation of self to the given output stream. More... | |
| void | dumpWithClassName (Stream &os, uint_t indent=4, uint_t level=uint_t_max) const |
| Front-end for dump() that prints the object's class name. More... | |
| virtual const Object & | getKey () const |
| Get the key for this object. More... | |
| bool | hasKey () const |
| Determine whether or not the object has a key. More... | |
| virtual const Object & | getProxiedObject () const |
| Get the proxied object (= self if none). More... | |
| virtual Object & | getProxiedObject () |
| Get the proxied object (= self if none). More... | |
| virtual size_t | hash (size_t size) const |
| Get the hash code for the object. More... | |
| bool | _isA (const RunTimeClass *runTimeClass) const |
| Determine whether self's class is a descendent of the given class. More... | |
| virtual String | toString () const |
| Return a string representation of self. More... | |
| operator String () const | |
| Conversion to String. More... | |
| size_t | allocatedSize () const |
| Get the total allocated size of this object. More... | |
| virtual size_t | innerAllocatedSize () const |
| Get the "inner" allocated size. More... | |
| virtual void | addOwnedIt (const class FwdIt *it) const |
| Notify self that it owns the given iterator. More... | |
| virtual void | removeOwnedIt (const class FwdIt *it) const |
| Notify self that the given owned iterator has been destroyed. More... | |
| bool | operator< (const Object &rhs) const |
| Less-than operator. More... | |
| bool | operator<= (const Object &rhs) const |
| Less-than-or-equal-to operator. More... | |
| bool | operator> (const Object &rhs) const |
| Greater-than operator. More... | |
| bool | operator>= (const Object &rhs) const |
| Greater-than-or-equal-to operator. More... | |
| bool | operator== (const Object &rhs) const |
| Equal-to operator. More... | |
| bool | operator!= (const Object &rhs) const |
| Unequal-to operator. More... | |
| void | serializeIn (Stream &is, uint_t mode=ser_default) |
| Serialize from an input stream. More... | |
| void | serializeOut (Stream &os, uint_t mode=ser_default) const |
| Serialize to an output stream. More... | |
| virtual void | serialize (Stream &stream, uint_t io, uint_t mode=ser_default) |
| Serialize to or from a stream. More... | |
| void | serializeOutBoxed (Stream &os, uint_t mode=ser_default) const |
| Serialize a boxed object to an output stream. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from utl::Object | |
| static Object * | serializeInNullable (Stream &is, uint_t mode=ser_default) |
| Serialize a nullptr-able object from an input stream. More... | |
| static void | serializeOutNullable (const Object *object, Stream &os, uint_t mode=ser_default) |
| Serialize a nullptr-able object to an output stream. More... | |
| static void | serializeNullable (Object *&object, Stream &stream, uint_t io, uint_t mode=ser_default) |
| Serialize a nullptr-able object to or from a stream. More... | |
| static Object * | serializeInBoxed (Stream &is, uint_t mode=ser_default) |
| Serialize a boxed object from an input stream. More... | |
| static void | serializeBoxed (Object *&object, Stream &stream, uint_t io, uint_t mode=ser_default) |
| Serialize a boxed object to or from a stream. More... | |
Protected Member Functions inherited from utl::FlagsMI | |
| FlagsMI () | |
| Constructor. More... | |
| virtual | ~FlagsMI () |
| Destructor. More... | |
| void | copyFlags (const FlagsMI &rhs) |
| Copy the given flags. More... | |
| void | copyFlags (const FlagsMI &rhs, uint_t lsb, uint_t msb) |
| Copy (some of) the given flags. More... | |
| void | copyFlags (uint64_t flags, uint_t lsb, uint_t msb) |
| Copy (some of) the given flags. More... | |
| bool | getFlag (uint_t flagNum) const |
| Get a user-defined flag. More... | |
| void | setFlag (uint_t flagNum, bool val) |
| Set a user-defined flag. More... | |
| uint64_t | getFlagsNumber (uint64_t mask, uint64_t shift=0) |
| Get a multi-bit value in the flags data (which is stored as one 64-bit integer). More... | |
| void | setFlagsNumber (uint64_t mask, uint64_t shift, uint64_t num) |
| Set a multi-bit value in the flags data (which is stored as one 64-bit integer). More... | |
| uint64_t | getFlags () const |
| Get the flags. More... | |
| void | setFlags (uint64_t flags) |
| Set the flags. More... | |
Boyer-Moore string search.
The Boyer-Moore string search algorithm is extremely fast, but requires some initial setup. Due to the cost associated with the initial setup, you should use BoyerMooreSearch in the following situations:
Definition at line 31 of file BoyerMooreSearch.h.
|
inline |
Constructor.
| owner | pattern ownership flag |
| pat | search pattern |
| patLen | pattern length |
| A | (optional) alphabet size |
Definition at line 43 of file BoyerMooreSearch.h.
References utl::init().
| const T * utl::BoyerMooreSearch< T >::find | ( | const T * | str, |
| size_t | strLen | ||
| ) | const |
Find the first occurrence of the search pattern in the given string.
| str | search string |
| strLen | search string length |
Definition at line 112 of file BoyerMooreSearch.h.
References utl::max().
| void utl::BoyerMooreSearch< T >::set | ( | bool | owner, |
| const T * | pat, | ||
| size_t | patLen | ||
| ) |
Set a new pattern.
| owner | pattern ownership flag |
| pat | search pattern |
| patLen | pattern length |
Definition at line 142 of file BoyerMooreSearch.h.
References utl::init(), utl::max(), utl::min(), utl::uint_t_max, and UTL_CLASS_IMPL_TPL.
|
inline |
Get the length of the pattern.
Definition at line 67 of file BoyerMooreSearch.h.
|
inline |
Get the owner flag.
Definition at line 74 of file BoyerMooreSearch.h.
|
inline |
Get the owner flag.
Definition at line 81 of file BoyerMooreSearch.h.
References utl::deInit(), utl::init(), and utl::uint_t_max.