]> git.vpit.fr Git - perl/modules/Sub-Op.git/blobdiff - sub_op.h
Update VPIT::TestHelpers to 15e8aee3
[perl/modules/Sub-Op.git] / sub_op.h
index 161d147f80549bb5d6c6f2a5a9255198e104c4f9..c66580eeb7aa7bd52c348d2f2adaec3938bcbc93 100644 (file)
--- a/sub_op.h
+++ b/sub_op.h
@@ -4,13 +4,24 @@
 #ifndef SUB_OP_H
 #define SUB_OP_H 1
 
+typedef OP *(*sub_op_check_t)(pTHX_ OP *, void *);
+
 typedef struct {
- const char   *name;
- STRLEN        len;
- Perl_ppaddr_t pp;
- void        (*check)(pTHX_ OP *);
-} sub_op_keyword;
+ const char    *name;
+ STRLEN         namelen;
+ const char    *proto;
+ STRLEN         protolen;
+ sub_op_check_t call;
+ sub_op_check_t ref;
+ void          *ud;
+} sub_op_config_t;
+
+#define SUB_OP_REGISTER_STEAL 1
 
-void sub_op_register(pTHX_ const sub_op_keyword *k);
+void             sub_op_init    (sub_op_config_t *c);
+void             sub_op_register(pTHX_ const sub_op_config_t *c, U32 flags);
+sub_op_config_t *sub_op_dup     (pTHX_ const sub_op_config_t *c);
+void             sub_op_free    (pTHX_ sub_op_config_t *c);
+OP *             sub_op_study   (const OP *o, OP **last_arg_p, OP **rv2cv_p);
 
 #endif /* SUB_OP_H */