/[pcre]/code/trunk/pcre.h.in
ViewVC logotype

Diff of /code/trunk/pcre.h.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 665 by ph10, Tue Aug 2 11:00:40 2011 UTC revision 666 by ph10, Mon Aug 22 14:56:43 2011 UTC
# Line 209  compile-time only bits for runtime optio Line 209  compile-time only bits for runtime optio
209  #define PCRE_INFO_JCHANGED          13  #define PCRE_INFO_JCHANGED          13
210  #define PCRE_INFO_HASCRORLF         14  #define PCRE_INFO_HASCRORLF         14
211  #define PCRE_INFO_MINLENGTH         15  #define PCRE_INFO_MINLENGTH         15
212    #define PCRE_INFO_JIT               16
213    
214  /* Request types for pcre_config(). Do not re-arrange, in order to remain  /* Request types for pcre_config(). Do not re-arrange, in order to remain
215  compatible. */  compatible. */
# Line 222  compatible. */ Line 223  compatible. */
223  #define PCRE_CONFIG_UNICODE_PROPERTIES      6  #define PCRE_CONFIG_UNICODE_PROPERTIES      6
224  #define PCRE_CONFIG_MATCH_LIMIT_RECURSION   7  #define PCRE_CONFIG_MATCH_LIMIT_RECURSION   7
225  #define PCRE_CONFIG_BSR                     8  #define PCRE_CONFIG_BSR                     8
226    #define PCRE_CONFIG_JIT                     9
227    
228    /* Request types for pcre_study(). Do not re-arrange, in order to remain
229    compatible. */
230    
231    #define PCRE_STUDY_JIT_COMPILE            0x0001
232    
233  /* Bit flags for the pcre_extra structure. Do not re-arrange or redefine  /* Bit flags for the pcre_extra structure. Do not re-arrange or redefine
234  these bits, just add new ones on the end, in order to remain compatible. */  these bits, just add new ones on the end, in order to remain compatible. */
# Line 232  these bits, just add new ones on the end Line 239  these bits, just add new ones on the end
239  #define PCRE_EXTRA_TABLES                 0x0008  #define PCRE_EXTRA_TABLES                 0x0008
240  #define PCRE_EXTRA_MATCH_LIMIT_RECURSION  0x0010  #define PCRE_EXTRA_MATCH_LIMIT_RECURSION  0x0010
241  #define PCRE_EXTRA_MARK                   0x0020  #define PCRE_EXTRA_MARK                   0x0020
242    #define PCRE_EXTRA_EXECUTABLE_JIT         0x0040
243    
244  /* Types */  /* Types */
245    
246  struct real_pcre;                 /* declaration; the definition is private  */  struct real_pcre;                 /* declaration; the definition is private  */
247  typedef struct real_pcre pcre;  typedef struct real_pcre pcre;
248    
249    struct real_pcre_jit_stack;       /* declaration; the definition is private  */
250    typedef struct real_pcre_jit_stack pcre_jit_stack;
251    
252  /* When PCRE is compiled as a C++ library, the subject pointer type can be  /* When PCRE is compiled as a C++ library, the subject pointer type can be
253  replaced with a custom type. For conventional use, the public interface is a  replaced with a custom type. For conventional use, the public interface is a
254  const char *. */  const char *. */
# Line 258  typedef struct pcre_extra { Line 269  typedef struct pcre_extra {
269    const unsigned char *tables;    /* Pointer to character tables */    const unsigned char *tables;    /* Pointer to character tables */
270    unsigned long int match_limit_recursion; /* Max recursive calls to match() */    unsigned long int match_limit_recursion; /* Max recursive calls to match() */
271    unsigned char **mark;           /* For passing back a mark pointer */    unsigned char **mark;           /* For passing back a mark pointer */
272      void *executable_jit;           /* Contains a pointer to a compiled jit code */
273  } pcre_extra;  } pcre_extra;
274    
275  /* The structure for passing out data via the pcre_callout_function. We use a  /* The structure for passing out data via the pcre_callout_function. We use a
# Line 305  PCRE_EXP_DECL void pcre_stack_free(void Line 317  PCRE_EXP_DECL void pcre_stack_free(void
317  PCRE_EXP_DECL int   pcre_callout(pcre_callout_block *);  PCRE_EXP_DECL int   pcre_callout(pcre_callout_block *);
318  #endif  /* VPCOMPAT */  #endif  /* VPCOMPAT */
319    
320    /* User defined callback which provides a stack just before the match starts. */
321    
322    typedef pcre_jit_stack *(*pcre_jit_callback)(void *);
323    
324  /* Exported PCRE functions */  /* Exported PCRE functions */
325    
326  PCRE_EXP_DECL pcre *pcre_compile(const char *, int, const char **, int *,  PCRE_EXP_DECL pcre *pcre_compile(const char *, int, const char **, int *,
# Line 337  PCRE_EXP_DECL int pcre_info(const pcre Line 353  PCRE_EXP_DECL int pcre_info(const pcre
353  PCRE_EXP_DECL const unsigned char *pcre_maketables(void);  PCRE_EXP_DECL const unsigned char *pcre_maketables(void);
354  PCRE_EXP_DECL int  pcre_refcount(pcre *, int);  PCRE_EXP_DECL int  pcre_refcount(pcre *, int);
355  PCRE_EXP_DECL pcre_extra *pcre_study(const pcre *, int, const char **);  PCRE_EXP_DECL pcre_extra *pcre_study(const pcre *, int, const char **);
356    PCRE_EXP_DECL void pcre_free_study(pcre_extra *);
357  PCRE_EXP_DECL const char *pcre_version(void);  PCRE_EXP_DECL const char *pcre_version(void);
358    
359    /* JIT compiler related functions. */
360    
361    PCRE_EXP_DECL pcre_jit_stack *pcre_jit_stack_alloc(int, int);
362    PCRE_EXP_DECL void pcre_jit_stack_free(pcre_jit_stack *);
363    PCRE_EXP_DECL void pcre_assign_jit_callback(pcre_extra *, pcre_jit_callback, void *);
364    
365  #ifdef __cplusplus  #ifdef __cplusplus
366  }  /* extern "C" */  }  /* extern "C" */
367  #endif  #endif

Legend:
Removed from v.665  
changed lines
  Added in v.666

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12