]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/regex.h
Set wxABI_VERSION default value to e.g. 29999 so that new APIs can be wrapped
[wxWidgets.git] / include / wx / regex.h
index 812405852f9a1b44dea102ec1083b056ff1113aa..a7287a534283e30d48a792351dd18bfdb6640b58 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef _WX_REGEX_H_
 #define _WX_REGEX_H_
 
-#if defined(__GNUG__) && !defined(__APPLE__)
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma interface "regex.h"
 #endif
 
@@ -20,7 +20,7 @@
 
 #if wxUSE_REGEX
 
-class WXDLLEXPORT wxString;
+class WXDLLIMPEXP_BASE wxString;
 
 // ----------------------------------------------------------------------------
 // constants
@@ -29,9 +29,14 @@ class WXDLLEXPORT wxString;
 // flags for regex compilation: these can be used with Compile()
 enum
 {
-    // use extended regex syntax (default)
+    // use extended regex syntax
     wxRE_EXTENDED = 0,
 
+    // use advanced RE syntax (built-in regex only)
+#ifdef wxHAS_REGEX_ADVANCED
+    wxRE_ADVANCED = 1,
+#endif
+
     // use basic RE syntax
     wxRE_BASIC    = 2,
 
@@ -67,9 +72,9 @@ enum
 // wxRegEx: a regular expression
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxRegExImpl;
+class WXDLLIMPEXP_BASE wxRegExImpl;
 
-class WXDLLEXPORT wxRegEx
+class WXDLLIMPEXP_BASE wxRegEx
 {
 public:
     // default ctor: use Compile() later
@@ -82,15 +87,15 @@ public:
         (void)Compile(expr, flags);
     }
 
-    // return TRUE if this is a valid compiled regular expression
+    // return true if this is a valid compiled regular expression
     bool IsValid() const { return m_impl != NULL; }
 
-    // compile the string into regular expression, return TRUE if ok or FALSE
+    // compile the string into regular expression, return true if ok or false
     // if string has a syntax error
     bool Compile(const wxString& pattern, int flags = wxRE_DEFAULT);
 
     // matches the precompiled regular expression against a string, return
-    // TRUE if matches and FALSE otherwise
+    // true if matches and false otherwise
     //
     // flags may be combination of wxRE_NOTBOL and wxRE_NOTEOL
     //
@@ -102,7 +107,7 @@ public:
     //
     // may only be called after successful call to Matches()
     //
-    // return FALSE if no match or on error
+    // return false if no match or on error
     bool GetMatch(size_t *start, size_t *len, size_t index = 0) const;
 
     // return the part of string corresponding to the match, empty string is
@@ -111,6 +116,12 @@ public:
     // may only be called after successful call to Matches()
     wxString GetMatch(const wxString& text, size_t index = 0) const;
 
+    // return the size of the array of matches, i.e. the number of bracketed
+    // subexpressions plus one for the expression itself, or 0 on error.
+    //
+    // may only be called after successful call to Compile()
+    size_t GetMatchCount() const;
+
     // replaces the current regular expression in the string pointed to by
     // pattern, with the text in replacement and return number of matches
     // replaced (maybe 0 if none found) or -1 on error