Skip to content

Commit

Permalink
applied suggested patch with prototype changes
Browse files Browse the repository at this point in the history
	Message-Id: <199911240355.WAA23033@monk.mps.ohio-state.edu>
	Subject: [PATCH 5.005_62] First char cognizance

p4raw-id: //depot/perl@4618
  • Loading branch information
Ilya Zakharevich authored and Gurusamy Sarathy committed Dec 2, 1999
1 parent 66e933a commit f9d9cdc
Show file tree
Hide file tree
Showing 6 changed files with 700 additions and 30 deletions.
28 changes: 28 additions & 0 deletions embed.h
Expand Up @@ -934,7 +934,14 @@
#define regwhite S_regwhite
#define nextchar S_nextchar
#define dumpuntil S_dumpuntil
#define put_byte S_put_byte
#define scan_commit S_scan_commit
#define cl_anything S_cl_anything
#define cl_is_anything S_cl_is_anything
#define cl_init S_cl_init
#define cl_init_zero S_cl_init_zero
#define cl_and S_cl_and
#define cl_or S_cl_or
#define study_chunk S_study_chunk
#define add_data S_add_data
#define re_croak2 S_re_croak2
Expand Down Expand Up @@ -2319,7 +2326,14 @@
#define regwhite(a,b) S_regwhite(aTHX_ a,b)
#define nextchar() S_nextchar(aTHX)
#define dumpuntil(a,b,c,d,e) S_dumpuntil(aTHX_ a,b,c,d,e)
#define put_byte(a,b) S_put_byte(aTHX_ a,b)
#define scan_commit(a) S_scan_commit(aTHX_ a)
#define cl_anything(a) S_cl_anything(aTHX_ a)
#define cl_is_anything(a) S_cl_is_anything(aTHX_ a)
#define cl_init(a) S_cl_init(aTHX_ a)
#define cl_init_zero(a) S_cl_init_zero(aTHX_ a)
#define cl_and(a,b) S_cl_and(aTHX_ a,b)
#define cl_or(a,b) S_cl_or(aTHX_ a,b)
#define study_chunk(a,b,c,d,e) S_study_chunk(aTHX_ a,b,c,d,e)
#define add_data(a,b) S_add_data(aTHX_ a,b)
#define regpposixcc(a) S_regpposixcc(aTHX_ a)
Expand Down Expand Up @@ -4521,8 +4535,22 @@
#define nextchar S_nextchar
#define S_dumpuntil CPerlObj::S_dumpuntil
#define dumpuntil S_dumpuntil
#define S_put_byte CPerlObj::S_put_byte
#define put_byte S_put_byte
#define S_scan_commit CPerlObj::S_scan_commit
#define scan_commit S_scan_commit
#define S_cl_anything CPerlObj::S_cl_anything
#define cl_anything S_cl_anything
#define S_cl_is_anything CPerlObj::S_cl_is_anything
#define cl_is_anything S_cl_is_anything
#define S_cl_init CPerlObj::S_cl_init
#define cl_init S_cl_init
#define S_cl_init_zero CPerlObj::S_cl_init_zero
#define cl_init_zero S_cl_init_zero
#define S_cl_and CPerlObj::S_cl_and
#define cl_and S_cl_and
#define S_cl_or CPerlObj::S_cl_or
#define cl_or S_cl_or
#define S_study_chunk CPerlObj::S_study_chunk
#define study_chunk S_study_chunk
#define S_add_data CPerlObj::S_add_data
Expand Down
9 changes: 9 additions & 0 deletions embed.pl
Expand Up @@ -2013,7 +2013,16 @@ sub emit_func {
s |char*|nextchar
s |regnode*|dumpuntil |regnode *start|regnode *node \
|regnode *last|SV* sv|I32 l
s |void |put_byte |SV* sv|int c
s |void |scan_commit |struct scan_data_t *data
s |void |cl_anything |struct regnode_charclass_class *cl
s |int |cl_is_anything |struct regnode_charclass_class *cl
s |void |cl_init |struct regnode_charclass_class *cl
s |void |cl_init_zero |struct regnode_charclass_class *cl
s |void |cl_and |struct regnode_charclass_class *cl \
|struct regnode_charclass_class *and_with
s |void |cl_or |struct regnode_charclass_class *cl \
|struct regnode_charclass_class *or_with
s |I32 |study_chunk |regnode **scanp|I32 *deltap \
|regnode *last|struct scan_data_t *data \
|U32 flags
Expand Down
1 change: 1 addition & 0 deletions perl.h
Expand Up @@ -1748,6 +1748,7 @@ struct _sublex_info {
typedef struct magic_state MGS; /* struct magic_state defined in mg.c */

struct scan_data_t; /* Used in S_* functions in regcomp.c */
struct regnode_charclass_class; /* Used in S_* functions in regcomp.c */

typedef I32 CHECKPOINT;

Expand Down
7 changes: 7 additions & 0 deletions proto.h
Expand Up @@ -947,7 +947,14 @@ STATIC void S_regtail(pTHX_ regnode *, regnode *);
STATIC char* S_regwhite(pTHX_ char *, char *);
STATIC char* S_nextchar(pTHX);
STATIC regnode* S_dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l);
STATIC void S_put_byte(pTHX_ SV* sv, int c);
STATIC void S_scan_commit(pTHX_ struct scan_data_t *data);
STATIC void S_cl_anything(pTHX_ struct regnode_charclass_class *cl);
STATIC int S_cl_is_anything(pTHX_ struct regnode_charclass_class *cl);
STATIC void S_cl_init(pTHX_ struct regnode_charclass_class *cl);
STATIC void S_cl_init_zero(pTHX_ struct regnode_charclass_class *cl);
STATIC void S_cl_and(pTHX_ struct regnode_charclass_class *cl, struct regnode_charclass_class *and_with);
STATIC void S_cl_or(pTHX_ struct regnode_charclass_class *cl, struct regnode_charclass_class *or_with);
STATIC I32 S_study_chunk(pTHX_ regnode **scanp, I32 *deltap, regnode *last, struct scan_data_t *data, U32 flags);
STATIC I32 S_add_data(pTHX_ I32 n, char *s);
STATIC void S_re_croak2(pTHX_ const char* pat1, const char* pat2, ...) __attribute__((noreturn));
Expand Down

0 comments on commit f9d9cdc

Please sign in to comment.