/*------------------------------------------------------------------------*/ /* */ /* REGEXP.H */ /* */ /*------------------------------------------------------------------------*/ /* * C/C++ Run Time Library - Version 10.0 * * Copyright (c) 1998, 2000 by Inprise Corporation * All Rights Reserved. * */ /* $Revision: 9.3 $ */ #ifndef __cplusplus #error Must use C++ for REGEXP.H #endif #ifndef __REGEXP_H #define __REGEXP_H #if !defined(___DEFS_H) #include <_defs.h> #endif #if !defined( __EXCEPT_H ) #include #endif #if !defined(RC_INVOKED) #if defined(__STDC__) #pragma warn -nak #endif #endif /* !RC_INVOKED */ /*------------------------------------------------------------------------*/ /* */ /* class TRegexp */ /* */ /* Implements regular expression searching */ /* */ /*------------------------------------------------------------------------*/ class _EXPCLASS TRegexp { public: enum StatVal { OK=0, ILLEGAL, NOMEMORY, TOOLONG }; _RTLENTRY TRegexp( const char *cp ); _RTLENTRY TRegexp( const TRegexp &r ); _RTLENTRY ~TRegexp(); TRegexp & _RTLENTRY operator = ( const TRegexp &r ) throw(); TRegexp & _RTLENTRY operator = ( const char *cp ) throw(); size_t _RTLENTRY find( const char *cp, size_t *len, size_t start = 0 ) const; StatVal _RTLENTRY status() throw() { return stat; } private: void _RTLENTRY copy_pattern( const TRegexp &r ) throw(); void _RTLENTRY gen_pattern( const char *cp ) throw(); unsigned char *the_pattern; StatVal stat; static const unsigned maxpat; }; #if !defined(RC_INVOKED) #if defined(__STDC__) #pragma warn .nak #endif #endif /* !RC_INVOKED */ #endif /* __REGEXP_H */