diff options
author | Karl Williamson <public@khwilliamson.com> | 2013-08-01 14:49:29 -0600 |
---|---|---|
committer | Karl Williamson <public@khwilliamson.com> | 2013-09-24 11:36:12 -0600 |
commit | b8f7bb16f63b8e72236f34002e68da18767fe62c (patch) | |
tree | 84cc35a7420bede3975683d8daa32b64e631e686 /embed.fnc | |
parent | de92f5e66ec16fd0d9068f362c5ffccd9a5b6135 (diff) | |
download | perl-b8f7bb16f63b8e72236f34002e68da18767fe62c.tar.gz |
Add regnode struct for synthetic start class
As part of extending the regular expression optimizer to properly handle
above Latin1 code points, I need an inversion list to contain which code
points the synthetic start class (ssc) matches.
The ssc currently is the same as a locale-aware ANYOF node, which uses
the struct of a regular ANYOF node, plus some extra fields at the end.
This commit creates a new typedef for ssc use, which is the locale-aware
ANYOF node, plus an extra SV* at the end to hold the inversion list.
Diffstat (limited to 'embed.fnc')
-rw-r--r-- | embed.fnc | 16 |
1 files changed, 8 insertions, 8 deletions
@@ -2048,21 +2048,21 @@ Es |void |scan_commit |NN const struct RExC_state_t *pRExC_state \ |NN SSize_t *minlenp|int is_inf Es |void |populate_ANYOF_from_invlist|NN regnode *node|NN SV** invlist_ptr Esn |void |cl_anything |NN const struct RExC_state_t *pRExC_state \ - |NN struct regnode_charclass_class *cl -EsRn |int |cl_is_anything |NN const struct regnode_charclass_class *cl + |NN regnode_ssc *cl +EsRn |int |cl_is_anything |NN const regnode_ssc *cl Esn |void |cl_init |NN const struct RExC_state_t *pRExC_state \ - |NN struct regnode_charclass_class *cl -Esn |void |cl_and |NN struct regnode_charclass_class *cl \ - |NN const struct regnode_charclass_class *and_with + |NN regnode_ssc *cl +Esn |void |cl_and |NN regnode_ssc *cl \ + |NN const regnode_ssc *and_with Esn |void |cl_or |NN const struct RExC_state_t *pRExC_state \ - |NN struct regnode_charclass_class *cl \ - |NN const struct regnode_charclass_class *or_with + |NN regnode_ssc *cl \ + |NN const regnode_ssc *or_with Es |SSize_t|study_chunk |NN struct RExC_state_t *pRExC_state \ |NN regnode **scanp|NN SSize_t *minlenp \ |NN SSize_t *deltap|NN regnode *last \ |NULLOK struct scan_data_t *data \ |I32 stopparen|NULLOK U8* recursed \ - |NULLOK struct regnode_charclass_class *and_withp \ + |NULLOK regnode_ssc *and_withp \ |U32 flags|U32 depth EsRn |U32 |add_data |NN struct RExC_state_t *pRExC_state|U32 n \ |NN const char *s |