This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #53908] perlpodspec typo "Encoding::Supported"
[perl5.git] / regcomp.h
index 70fdeb5..dee7d78 100644 (file)
--- a/regcomp.h
+++ b/regcomp.h
@@ -1,7 +1,7 @@
 /*    regcomp.h
  *
  *    Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- *    2000, 2001, 2002, 2003, 2005, 2006 by Larry Wall and others
+ *    2000, 2001, 2002, 2003, 2005, 2006, 2007, by Larry Wall and others
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -465,13 +465,16 @@ EXTCONST regexp_engine PL_core_reg_engine;
 #else /* DOINIT */
 EXTCONST regexp_engine PL_core_reg_engine = { 
         Perl_re_compile,
-        Perl_regexec_flags, 
+        Perl_regexec_flags,
         Perl_re_intuit_start,
         Perl_re_intuit_string, 
-        Perl_regfree_internal, 
-        Perl_reg_numbered_buff_get,
-        Perl_reg_named_buff_get,
-        Perl_reg_qr_pkg,
+        Perl_regfree_internal,
+        Perl_reg_numbered_buff_fetch,
+        Perl_reg_numbered_buff_store,
+        Perl_reg_numbered_buff_length,
+        Perl_reg_named_buff,
+        Perl_reg_named_buff_iter,
+        Perl_reg_qr_package,
 #if defined(USE_ITHREADS)        
         Perl_regdupe_internal
 #endif        
@@ -489,7 +492,7 @@ END_EXTERN_C
  *   n - Root of op tree for (?{EVAL}) item
  *   o - Start op for (?{EVAL}) item
  *   p - Pad for (?{EVAL}) item
- *   s - swash for unicode-style character class, and the multicharacter
+ *   s - swash for Unicode-style character class, and the multicharacter
  *       strings resulting from casefolding the single-character entries
  *       in the character class
  *   t - trie struct
@@ -525,7 +528,10 @@ struct reg_data {
 #define check_offset_max substrs->data[2].max_offset
 #define check_end_shift substrs->data[2].end_shift
 
-
+#define RX_ANCHORED_SUBSTR(rx) (((struct regexp *)SvANY(rx))->anchored_substr)
+#define RX_ANCHORED_UTF8(rx)   (((struct regexp *)SvANY(rx))->anchored_utf8)
+#define RX_FLOAT_SUBSTR(rx)    (((struct regexp *)SvANY(rx))->float_substr)
+#define RX_FLOAT_UTF8(rx)      (((struct regexp *)SvANY(rx))->float_utf8)
 
 /* trie related stuff */
 
@@ -688,6 +694,7 @@ re.pm, especially to the documentation.
 #define RE_DEBUG_COMPILE_OPTIMISE  0x000002
 #define RE_DEBUG_COMPILE_TRIE      0x000004
 #define RE_DEBUG_COMPILE_DUMP      0x000008
+#define RE_DEBUG_COMPILE_FLAGS     0x000010
 
 /* Execute */
 #define RE_DEBUG_EXECUTE_MASK      0x00FF00
@@ -720,7 +727,8 @@ re.pm, especially to the documentation.
     if (re_debug_flags & RE_DEBUG_COMPILE_DUMP) x  )
 #define DEBUG_TRIE_COMPILE_r(x) DEBUG_r( \
     if (re_debug_flags & RE_DEBUG_COMPILE_TRIE) x )
-
+#define DEBUG_FLAGS_r(x) DEBUG_r( \
+    if (re_debug_flags & RE_DEBUG_COMPILE_FLAGS) x )
 /* Execute */
 #define DEBUG_EXECUTE_r(x) DEBUG_r( \
     if (re_debug_flags & RE_DEBUG_EXECUTE_MASK) x  )
@@ -791,7 +799,7 @@ re.pm, especially to the documentation.
     const char * const rpv =                                       \
         pv_pretty((dsv), (pv), (l), (m), \
             PL_colors[0], PL_colors[1], \
-            ( PERL_PV_PRETTY_QUOTE | PERL_PV_ESCAPE_RE | PERL_PV_PRETTY_ELIPSES |      \
+            ( PERL_PV_PRETTY_QUOTE | PERL_PV_ESCAPE_RE | PERL_PV_PRETTY_ELLIPSES | \
               ((isuni) ? PERL_PV_ESCAPE_UNI : 0))                  \
         )
 
@@ -809,5 +817,12 @@ re.pm, especially to the documentation.
 
 #endif /* DEBUG RELATED DEFINES */
 
-
-
+/*
+ * Local variables:
+ * c-indentation-style: bsd
+ * c-basic-offset: 4
+ * indent-tabs-mode: t
+ * End:
+ *
+ * ex: set ts=8 sts=4 sw=4 noet:
+ */