summaryrefslogtreecommitdiff
path: root/ext/mbstring/oniguruma/onigposix.h
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mbstring/oniguruma/onigposix.h')
-rw-r--r--ext/mbstring/oniguruma/onigposix.h93
1 files changed, 47 insertions, 46 deletions
diff --git a/ext/mbstring/oniguruma/onigposix.h b/ext/mbstring/oniguruma/onigposix.h
index ea93c6f9f7..3793ae6bd9 100644
--- a/ext/mbstring/oniguruma/onigposix.h
+++ b/ext/mbstring/oniguruma/onigposix.h
@@ -2,7 +2,7 @@
onigposix.h - Oniguruma (regular expression library)
- Copyright (C) 2003 K.Kosako (kosako@sofnec.co.jp)
+ Copyright (C) 2003-2004 K.Kosako (kosako@sofnec.co.jp)
**********************************************************************/
#ifndef ONIGPOSIX_H
@@ -13,7 +13,7 @@
#define REG_NEWLINE (1<<1)
#define REG_NOTBOL (1<<2)
#define REG_NOTEOL (1<<3)
-#define REG_EXTENDED (1<<4) /* if not setted, Basic Regular Expression */
+#define REG_EXTENDED (1<<4) /* if not setted, Basic Onigular Expression */
#define REG_NOSUB (1<<5)
/* POSIX error codes */
@@ -38,11 +38,10 @@
#define REG_EONIG_THREAD 17
/* character encodings (for reg_set_encoding()) */
-/* These value must be same with MBCTYPE_XXXX in oniguruma.h.*/
-#define REG_ENCODING_ASCII 0
-#define REG_ENCODING_EUC_JP 1
-#define REG_ENCODING_SJIS 2
-#define REG_ENCODING_UTF8 3
+#define REG_POSIX_ENCODING_ASCII 0
+#define REG_POSIX_ENCODING_EUC_JP 1
+#define REG_POSIX_ENCODING_SJIS 2
+#define REG_POSIX_ENCODING_UTF8 3
#include <stdlib.h>
@@ -63,73 +62,75 @@ typedef struct {
#ifndef P_
-#ifdef __STDC__
+#if defined(__STDC__) || defined(_WIN32)
# define P_(args) args
#else
# define P_(args) ()
#endif
#endif
-#ifndef REG_EXTERN
+#ifndef ONIG_EXTERN
#if defined(_WIN32) && !defined(__CYGWIN__)
#if defined(EXPORT) || defined(RUBY_EXPORT)
-#define REG_EXTERN extern __declspec(dllexport)
-#elif defined(IMPORT)
-#define REG_EXTERN extern __declspec(dllimport)
+#define ONIG_EXTERN extern __declspec(dllexport)
+#else
+#define ONIG_EXTERN extern __declspec(dllimport)
#endif
#endif
#endif
-#ifndef REG_EXTERN
-#define REG_EXTERN extern
+#ifndef ONIG_EXTERN
+#define ONIG_EXTERN extern
#endif
#ifndef ONIGURUMA_H
-typedef unsigned int RegOptionType;
+typedef unsigned int OnigOptionType;
/* syntax */
typedef struct {
unsigned int op;
unsigned int op2;
unsigned int behavior;
- RegOptionType options; /* default option */
-} RegSyntaxType;
-
-REG_EXTERN RegSyntaxType RegSyntaxPosixBasic;
-REG_EXTERN RegSyntaxType RegSyntaxPosixExtended;
-REG_EXTERN RegSyntaxType RegSyntaxEmacs;
-REG_EXTERN RegSyntaxType RegSyntaxGrep;
-REG_EXTERN RegSyntaxType RegSyntaxGnuRegex;
-REG_EXTERN RegSyntaxType RegSyntaxJava;
-REG_EXTERN RegSyntaxType RegSyntaxPerl;
-REG_EXTERN RegSyntaxType RegSyntaxRuby;
-
-/* predefined syntaxes (see regcomp.c) */
-#define REG_SYNTAX_POSIX_BASIC (&RegSyntaxPosixBasic)
-#define REG_SYNTAX_POSIX_EXTENDED (&RegSyntaxPosixExtended)
-#define REG_SYNTAX_EMACS (&RegSyntaxEmacs)
-#define REG_SYNTAX_GREP (&RegSyntaxGrep)
-#define REG_SYNTAX_GNU_REGEX (&RegSyntaxGnuRegex)
-#define REG_SYNTAX_JAVA (&RegSyntaxJava)
-#define REG_SYNTAX_PERL (&RegSyntaxPerl)
-#define REG_SYNTAX_RUBY (&RegSyntaxRuby)
+ OnigOptionType options; /* default option */
+} OnigSyntaxType;
+
+ONIG_EXTERN OnigSyntaxType OnigSyntaxPosixBasic;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxPosixExtended;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxEmacs;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxGrep;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxGnuRegex;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxJava;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxPerl;
+ONIG_EXTERN OnigSyntaxType OnigSyntaxRuby;
+
+/* predefined syntaxes (see regparse.c) */
+#define ONIG_SYNTAX_POSIX_BASIC (&OnigSyntaxPosixBasic)
+#define ONIG_SYNTAX_POSIX_EXTENDED (&OnigSyntaxPosixExtended)
+#define ONIG_SYNTAX_EMACS (&OnigSyntaxEmacs)
+#define ONIG_SYNTAX_GREP (&OnigSyntaxGrep)
+#define ONIG_SYNTAX_GNU_REGEX (&OnigSyntaxGnuRegex)
+#define ONIG_SYNTAX_JAVA (&OnigSyntaxJava)
+#define ONIG_SYNTAX_PERL (&OnigSyntaxPerl)
+#define ONIG_SYNTAX_RUBY (&OnigSyntaxRuby)
/* default syntax */
-#define REG_SYNTAX_DEFAULT RegDefaultSyntax
+#define ONIG_SYNTAX_DEFAULT OnigDefaultSyntax
-REG_EXTERN RegSyntaxType* RegDefaultSyntax;
+ONIG_EXTERN OnigSyntaxType* OnigDefaultSyntax;
-REG_EXTERN int regex_set_default_syntax P_((RegSyntaxType* syntax));
+ONIG_EXTERN int onig_set_default_syntax P_((OnigSyntaxType* syntax));
+ONIG_EXTERN void onig_copy_syntax P_((OnigSyntaxType* to, OnigSyntaxType* from));
#endif /* ONIGURUMA_H */
-REG_EXTERN int regcomp P_((regex_t* reg, const char* pat, int options));
-REG_EXTERN int regexec P_((regex_t* reg, const char* str, size_t nmatch, regmatch_t* matches, int options));
-REG_EXTERN void regfree P_((regex_t* reg));
-REG_EXTERN size_t regerror P_((int code, const regex_t* reg, char* buf, size_t size));
+ONIG_EXTERN int regcomp P_((regex_t* reg, const char* pat, int options));
+ONIG_EXTERN int regexec P_((regex_t* reg, const char* str, size_t nmatch, regmatch_t* matches, int options));
+ONIG_EXTERN void regfree P_((regex_t* reg));
+ONIG_EXTERN size_t regerror P_((int code, const regex_t* reg, char* buf, size_t size));
/* extended API */
-REG_EXTERN void reg_set_encoding P_((int enc));
-REG_EXTERN int reg_name_to_group_numbers P_((regex_t* reg, unsigned char* name, unsigned char* name_end, int** nums));
-REG_EXTERN int reg_foreach_name P_((regex_t* reg, int (*func)(unsigned char*,int,int*,void*), void* arg));
+ONIG_EXTERN void reg_set_encoding P_((int enc));
+ONIG_EXTERN int reg_name_to_group_numbers P_((regex_t* reg, unsigned char* name, unsigned char* name_end, int** nums));
+ONIG_EXTERN int reg_foreach_name P_((regex_t* reg, int (*func)(unsigned char*,unsigned char*,int,int*,regex_t*,void*), void* arg));
+ONIG_EXTERN int reg_number_of_names P_((regex_t* reg));
#endif /* ONIGPOSIX_H */