summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2011-05-29 12:27:49 -0600
committerKarl Williamson <public@khwilliamson.com>2011-07-03 14:05:47 -0600
commitf1b67122022c4748336f3c81978e179361a149d3 (patch)
treeb490fc206d9adb30e0be3fc2c494c99a613e8d50 /proto.h
parentfa2d2a23f92127e5309991ee009d1b6291408da8 (diff)
downloadperl-f1b67122022c4748336f3c81978e179361a149d3.tar.gz
Add an element to inversion list data structure
This element is restricted to either 0 or 1. The comments detail how its use enables an inversion list to be efficiently inverted.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/proto.h b/proto.h
index 78f5dccf77..bfb0f83911 100644
--- a/proto.h
+++ b/proto.h
@@ -5986,6 +5986,12 @@ STATIC SV * S_space_join_names_mortal(pTHX_ char *const *array)
#endif
#if defined(PERL_IN_REGCOMP_C)
+PERL_STATIC_INLINE UV* S__invlist_array_init(pTHX_ SV* const invlist, const bool will_have_0)
+ __attribute__warn_unused_result__
+ __attribute__nonnull__(pTHX_1);
+#define PERL_ARGS_ASSERT__INVLIST_ARRAY_INIT \
+ assert(invlist)
+
STATIC void S_add_alternate(pTHX_ AV** alternate_ptr, U8* string, STRLEN len)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2);
@@ -6053,6 +6059,12 @@ PERL_STATIC_INLINE UV* S_get_invlist_len_addr(pTHX_ SV* invlist)
#define PERL_ARGS_ASSERT_GET_INVLIST_LEN_ADDR \
assert(invlist)
+PERL_STATIC_INLINE UV* S_get_invlist_zero_addr(pTHX_ SV* invlist)
+ __attribute__warn_unused_result__
+ __attribute__nonnull__(pTHX_1);
+#define PERL_ARGS_ASSERT_GET_INVLIST_ZERO_ADDR \
+ assert(invlist)
+
PERL_STATIC_INLINE UV* S_invlist_array(pTHX_ SV* const invlist)
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);