From 7067c35dc09e4bb869b7cde77474bd32acb271dc Mon Sep 17 00:00:00 2001 From: Corey Johnson & Nathan Sobo Date: Mon, 30 Jul 2012 16:02:14 -0700 Subject: [PATCH] Add CocoaOniguruma --- Atom.xcodeproj/project.pbxproj | 16 +- Atom/src/OnigRegexpExtension.mm | 35 +- Rakefile | 2 +- .../CocoaOniguruma.framework/CocoaOniguruma | 1 + frameworks/CocoaOniguruma.framework/Headers | 1 + frameworks/CocoaOniguruma.framework/Resources | 1 + .../Versions/A/CocoaOniguruma | Bin 0 -> 576696 bytes .../Versions/A/Headers/OnigRegexp.h | 90 ++ .../Versions/A/Headers/OnigRegexpUtility.h | 57 ++ .../Versions/A/Headers/oniguruma.h | 770 ++++++++++++++++++ .../Resources/English.lproj/InfoPlist.strings | Bin 0 -> 218 bytes .../Versions/A/Resources/Info.plist | 38 + .../CocoaOniguruma.framework/Versions/Current | 1 + spec/stdlib/onig-reg-exp-spec.coffee | 2 + spec/stdlib/onig-regexp-spec.coffee | 13 + src/stdlib/onig-reg-exp-extension.js | 16 + src/stdlib/onig-regexp-extension.js | 16 - 17 files changed, 1029 insertions(+), 30 deletions(-) create mode 120000 frameworks/CocoaOniguruma.framework/CocoaOniguruma create mode 120000 frameworks/CocoaOniguruma.framework/Headers create mode 120000 frameworks/CocoaOniguruma.framework/Resources create mode 100755 frameworks/CocoaOniguruma.framework/Versions/A/CocoaOniguruma create mode 100644 frameworks/CocoaOniguruma.framework/Versions/A/Headers/OnigRegexp.h create mode 100644 frameworks/CocoaOniguruma.framework/Versions/A/Headers/OnigRegexpUtility.h create mode 100644 frameworks/CocoaOniguruma.framework/Versions/A/Headers/oniguruma.h create mode 100644 frameworks/CocoaOniguruma.framework/Versions/A/Resources/English.lproj/InfoPlist.strings create mode 100644 frameworks/CocoaOniguruma.framework/Versions/A/Resources/Info.plist create mode 120000 frameworks/CocoaOniguruma.framework/Versions/Current create mode 100644 spec/stdlib/onig-reg-exp-spec.coffee create mode 100644 spec/stdlib/onig-regexp-spec.coffee create mode 100644 src/stdlib/onig-reg-exp-extension.js delete mode 100644 src/stdlib/onig-regexp-extension.js diff --git a/Atom.xcodeproj/project.pbxproj b/Atom.xcodeproj/project.pbxproj index 8abce1f58..350c950fb 100644 --- a/Atom.xcodeproj/project.pbxproj +++ b/Atom.xcodeproj/project.pbxproj @@ -8,6 +8,8 @@ /* Begin PBXBuildFile section */ 0415A1FE1524EC8A0075C91C /* atom.icns in Resources */ = {isa = PBXBuildFile; fileRef = 0415A1FD1524EC8A0075C91C /* atom.icns */; }; + 0446DB6315C73BDA006756AF /* CocoaOniguruma.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0446DB6215C73BDA006756AF /* CocoaOniguruma.framework */; }; + 0446DB6515C73BF4006756AF /* CocoaOniguruma.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 0446DB6215C73BDA006756AF /* CocoaOniguruma.framework */; }; 0472D16515A26C9400F7AD9A /* ffmpegsumo.so in Resources */ = {isa = PBXBuildFile; fileRef = 0472D16315A26C9400F7AD9A /* ffmpegsumo.so */; }; 0472D16615A26C9400F7AD9A /* libcef.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 0472D16415A26C9400F7AD9A /* libcef.dylib */; }; 0472D16715A26CCC00F7AD9A /* ffmpegsumo.so in Copy Required Chrome Frameworks */ = {isa = PBXBuildFile; fileRef = 0472D16315A26C9400F7AD9A /* ffmpegsumo.so */; }; @@ -86,7 +88,7 @@ 0487D16014FEE78E0045E5E3 /* Resources in Copy Chrome Resources */ = {isa = PBXBuildFile; fileRef = 0487D15E14FEE7880045E5E3 /* Resources */; }; 048A2FC7154870DC0051715C /* PathWatcher.mm in Sources */ = {isa = PBXBuildFile; fileRef = 048A2FC6154870DC0051715C /* PathWatcher.mm */; }; 04E1DDDD152A0941001A9D07 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 04E1DDDC152A0941001A9D07 /* Sparkle.framework */; }; - 04E1DDDF152A09C3001A9D07 /* Sparkle.framework in Copy Sparkle Framework */ = {isa = PBXBuildFile; fileRef = 04E1DDDC152A0941001A9D07 /* Sparkle.framework */; }; + 04E1DDDF152A09C3001A9D07 /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 04E1DDDC152A0941001A9D07 /* Sparkle.framework */; }; EC800C1B15C72378007FD3CB /* OnigRegexpExtension.mm in Sources */ = {isa = PBXBuildFile; fileRef = EC800C1A15C72378007FD3CB /* OnigRegexpExtension.mm */; }; /* End PBXBuildFile section */ @@ -124,15 +126,16 @@ name = "Copy Chrome Resources"; runOnlyForDeploymentPostprocessing = 0; }; - 04E1DDDE152A09A8001A9D07 /* Copy Sparkle Framework */ = { + 04E1DDDE152A09A8001A9D07 /* Copy Frameworks */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = ""; dstSubfolderSpec = 10; files = ( - 04E1DDDF152A09C3001A9D07 /* Sparkle.framework in Copy Sparkle Framework */, + 04E1DDDF152A09C3001A9D07 /* Sparkle.framework in Copy Frameworks */, + 0446DB6515C73BF4006756AF /* CocoaOniguruma.framework in Copy Frameworks */, ); - name = "Copy Sparkle Framework"; + name = "Copy Frameworks"; runOnlyForDeploymentPostprocessing = 0; }; /* End PBXCopyFilesBuildPhase section */ @@ -140,6 +143,7 @@ /* Begin PBXFileReference section */ 0415A1FD1524EC8A0075C91C /* atom.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = atom.icns; path = ../atom.icns; sourceTree = ""; }; 042180E614FF080D00DF25EA /* BrowserDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BrowserDelegate.h; sourceTree = ""; }; + 0446DB6215C73BDA006756AF /* CocoaOniguruma.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CocoaOniguruma.framework; path = frameworks/CocoaOniguruma.framework; sourceTree = ""; }; 0472D16315A26C9400F7AD9A /* ffmpegsumo.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.bundle"; name = ffmpegsumo.so; path = frameworks/ffmpegsumo.so; sourceTree = ""; }; 0472D16415A26C9400F7AD9A /* libcef.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcef.dylib; path = frameworks/libcef.dylib; sourceTree = ""; }; 0472D16B15A26D7600F7AD9A /* cef_app_capi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cef_app_capi.h; sourceTree = ""; }; @@ -412,6 +416,7 @@ 0487C91714FED5360045E5E3 /* Cocoa.framework in Frameworks */, 04E1DDDD152A0941001A9D07 /* Sparkle.framework in Frameworks */, 0472D16615A26C9400F7AD9A /* libcef.dylib in Frameworks */, + 0446DB6315C73BDA006756AF /* CocoaOniguruma.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -763,6 +768,7 @@ 0487C91514FED5360045E5E3 /* frameworks */ = { isa = PBXGroup; children = ( + 0446DB6215C73BDA006756AF /* CocoaOniguruma.framework */, 0472D16315A26C9400F7AD9A /* ffmpegsumo.so */, 0472D16415A26C9400F7AD9A /* libcef.dylib */, 04E1DDDC152A0941001A9D07 /* Sparkle.framework */, @@ -834,7 +840,7 @@ buildPhases = ( 0487CD9914FEE1500045E5E3 /* Copy Required Chrome Frameworks */, 0487CD9C14FEE17D0045E5E3 /* Copy Chrome Resources */, - 04E1DDDE152A09A8001A9D07 /* Copy Sparkle Framework */, + 04E1DDDE152A09A8001A9D07 /* Copy Frameworks */, 0487C90E14FED5360045E5E3 /* Sources */, 0487C90F14FED5360045E5E3 /* Frameworks */, 0487C91014FED5360045E5E3 /* Resources */, diff --git a/Atom/src/OnigRegexpExtension.mm b/Atom/src/OnigRegexpExtension.mm index d402ff407..f524d6f93 100644 --- a/Atom/src/OnigRegexpExtension.mm +++ b/Atom/src/OnigRegexpExtension.mm @@ -1,17 +1,34 @@ #import "OnigRegexpExtension.h" #import "include/cef_base.h" #import "include/cef_v8.h" +#import "CocoaOniguruma/OnigRegexp.h" #import #import +extern NSString *stringFromCefV8Value(const CefRefPtr& value); class OnigRegexpUserData : public CefBase { public: - OnigRegexpUserData(CefString source) { - m_source = source; + OnigRegexpUserData(CefRefPtr source) { + NSString *sourceString = [NSString stringWithUTF8String:source->GetStringValue().ToString().c_str()]; + m_regex = [[OnigRegexp compile:sourceString] retain]; } - CefString m_source; + CefRefPtr Search(CefRefPtr string, CefRefPtr index) { + OnigResult *result = [m_regex search:stringFromCefV8Value(string) start:index->GetIntValue()]; + + if ([result count] == 0) return CefV8Value::CreateNull(); + + CefRefPtr resultArray = CefV8Value::CreateArray(); + for (int i = 0; i < [result count]; i++) { + resultArray->SetValue(i, CefV8Value::CreateString([[result stringAt:i] UTF8String])); + } + + resultArray->SetValue("index", CefV8Value::CreateInt([result locationAt:0]), V8_PROPERTY_ATTRIBUTE_NONE); + return resultArray; + } + + OnigRegexp *m_regex; IMPLEMENT_REFCOUNTING(OnigRegexpUserData); @@ -19,7 +36,7 @@ public: OnigRegexpExtension::OnigRegexpExtension() : CefV8Handler() { - NSString *filePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"src/stdlib/onig-regexp-extension.js"]; + NSString *filePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"src/stdlib/onig-reg-exp-extension.js"]; NSString *extensionCode = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]; CefRegisterExtension("v8/oniguruma", [extensionCode UTF8String], this); } @@ -30,13 +47,15 @@ bool OnigRegexpExtension::Execute(const CefString& name, CefRefPtr& retval, CefString& exception) { - if (name == "buildOnigRegexp") { - CefRefPtr userData = new OnigRegexpUserData(arguments[0]->GetStringValue()); + if (name == "buildOnigRegExp") { + CefRefPtr userData = new OnigRegexpUserData(arguments[0]); retval = CefV8Value::CreateObject(userData, NULL); } - else if (name == "exec") { + else if (name == "search") { + CefRefPtr string = arguments[0]; + CefRefPtr index = arguments.size() > 1 ? arguments[1] : CefV8Value::CreateInt(0); OnigRegexpUserData *userData = (OnigRegexpUserData *)object->GetUserData().get(); - retval = CefV8Value::CreateString(userData->m_source); + retval = userData->Search(string, index); } return true; } diff --git a/Rakefile b/Rakefile index 4991ff745..1090ffc90 100644 --- a/Rakefile +++ b/Rakefile @@ -69,7 +69,7 @@ task :"copy-files-to-bundle" => :"verify-prerequisites" do end sh "coffee -c -o #{dest}/src/stdlib src/stdlib/require.coffee" - cp "src/stdlib/onig-regexp-extension.js", "#{dest}/src/stdlib" + cp "src/stdlib/onig-reg-exp-extension.js", "#{dest}/src/stdlib" unless ENV['LOAD_RESOURCES_FROM_DIR'] %w(src static vendor spec benchmark).each do |dir| rm_rf File.join(dest, dir) diff --git a/frameworks/CocoaOniguruma.framework/CocoaOniguruma b/frameworks/CocoaOniguruma.framework/CocoaOniguruma new file mode 120000 index 000000000..3fd2801a2 --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/CocoaOniguruma @@ -0,0 +1 @@ +Versions/Current/CocoaOniguruma \ No newline at end of file diff --git a/frameworks/CocoaOniguruma.framework/Headers b/frameworks/CocoaOniguruma.framework/Headers new file mode 120000 index 000000000..a177d2a6b --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/frameworks/CocoaOniguruma.framework/Resources b/frameworks/CocoaOniguruma.framework/Resources new file mode 120000 index 000000000..953ee36f3 --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/frameworks/CocoaOniguruma.framework/Versions/A/CocoaOniguruma b/frameworks/CocoaOniguruma.framework/Versions/A/CocoaOniguruma new file mode 100755 index 0000000000000000000000000000000000000000..27a54b05b0d2d43b83b2802db1eabdced2516f2a GIT binary patch literal 576696 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

bjv9=|7i4(%`Xu-)E=_Fn!-k=n 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 z. +// You can redistribute it and/or modify it under the new BSD license. + +#import +#import "oniguruma.h" +#import "OnigRegexpUtility.h" + + +@class OnigResult; + +typedef enum { + OnigOptionNone = ONIG_OPTION_NONE, + OnigOptionIgnorecase = ONIG_OPTION_IGNORECASE, + OnigOptionExtend = ONIG_OPTION_EXTEND, + OnigOptionMultiline = ONIG_OPTION_MULTILINE, + OnigOptionSingleline = ONIG_OPTION_SINGLELINE, + OnigOptionFindLongest = ONIG_OPTION_FIND_LONGEST, + OnigOptionFindNotEmpty = ONIG_OPTION_FIND_NOT_EMPTY, + OnigOptionNegateSingleLine = ONIG_OPTION_NEGATE_SINGLELINE, + OnigOptionDontCaptureGroup = ONIG_OPTION_DONT_CAPTURE_GROUP, + OnigOptionCaptureGroup = ONIG_OPTION_CAPTURE_GROUP, + + /* options (search time) */ + OnigOptionNotbol = ONIG_OPTION_NOTBOL, + OnigOptionNoteol = ONIG_OPTION_NOTEOL, + OnigOptionPosixRegion = ONIG_OPTION_POSIX_REGION, + OnigOptionMaxbit = ONIG_OPTION_MAXBIT +} OnigOption; + +@interface OnigRegexp : NSObject +{ + regex_t* _entity; + NSString* _expression; +} + ++ (OnigRegexp*)compile:(NSString*)expression; ++ (OnigRegexp*)compile:(NSString*)expression error:(NSError **)error; ++ (OnigRegexp*)compileIgnorecase:(NSString*)expression; ++ (OnigRegexp*)compileIgnorecase:(NSString*)expression error:(NSError **)error; ++ (OnigRegexp*)compile:(NSString*)expression ignorecase:(BOOL)ignorecase multiline:(BOOL)multiline; ++ (OnigRegexp*)compile:(NSString*)expression ignorecase:(BOOL)ignorecase multiline:(BOOL)multiline error:(NSError **)error; ++ (OnigRegexp*)compile:(NSString*)expression ignorecase:(BOOL)ignorecase multiline:(BOOL)multiline extended:(BOOL)extended; ++ (OnigRegexp*)compile:(NSString*)expression ignorecase:(BOOL)ignorecase multiline:(BOOL)multiline extended:(BOOL)extended error:(NSError **)error; ++ (OnigRegexp*)compile:(NSString*)expression options:(OnigOption)options; ++ (OnigRegexp*)compile:(NSString*)expression options:(OnigOption)options error:(NSError **)error; + +- (OnigResult*)search:(NSString*)target; +- (OnigResult*)search:(NSString*)target start:(int)start; +- (OnigResult*)search:(NSString*)target start:(int)start end:(int)end; +- (OnigResult*)search:(NSString*)target range:(NSRange)range; + +- (OnigResult*)match:(NSString*)target; +- (OnigResult*)match:(NSString*)target start:(int)start; + +- (NSString*)expression; + +@end + + +@interface OnigResult : NSObject +{ + OnigRegexp* _expression; + OnigRegion* _region; + NSString* _target; + NSMutableArray* _captureNames; +} + +- (NSString*)target; + +- (int)count; +- (NSString*)stringAt:(int)index; +- (NSArray*)strings; +- (NSRange)rangeAt:(int)index; +- (int)locationAt:(int)index; +- (int)lengthAt:(int)index; + +- (NSString*)body; +- (NSRange)bodyRange; + +- (NSString*)preMatch; +- (NSString*)postMatch; + +// named capture support +- (NSArray*)captureNames; +- (int)indexForName:(NSString*)name; +- (NSIndexSet*)indexesForName:(NSString*)name; +- (NSString*)stringForName:(NSString*)name; +- (NSArray*)stringsForName:(NSString*)name; + +@end diff --git a/frameworks/CocoaOniguruma.framework/Versions/A/Headers/OnigRegexpUtility.h b/frameworks/CocoaOniguruma.framework/Versions/A/Headers/OnigRegexpUtility.h new file mode 100644 index 000000000..245ebae3d --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Versions/A/Headers/OnigRegexpUtility.h @@ -0,0 +1,57 @@ +// CocoaOniguruma is copyrighted free software by Satoshi Nakagawa . +// You can redistribute it and/or modify it under the new BSD license. + +#import +#import "oniguruma.h" +#import "OnigRegexp.h" + + +@class OnigRegexp; +@class OnigResult; + + +@interface NSString (OnigRegexpUtility) + +// pattern is OnigRegexp or NSString + +- (NSRange)rangeOfRegexp:(id)pattern; + +// based on ruby's split + +- (NSArray*)split; +- (NSArray*)splitByRegexp:(id)pattern; +- (NSArray*)splitByRegexp:(id)pattern limit:(int)limit; + +// based on ruby's gsub + +- (NSString*)replaceByRegexp:(id)pattern with:(NSString*)string; +- (NSString*)replaceAllByRegexp:(id)pattern with:(NSString*)string; + +- (NSString*)replaceByRegexp:(id)pattern withCallback:(id)object selector:(SEL)sel; +- (NSString*)replaceAllByRegexp:(id)pattern withCallback:(id)object selector:(SEL)sel; + +#if defined(NS_BLOCKS_AVAILABLE) +- (NSString*)replaceByRegexp:(id)pattern withBlock:(NSString* (^)(OnigResult*))block; +- (NSString*)replaceAllByRegexp:(id)pattern withBlock:(NSString* (^)(OnigResult*))block; +#endif + +@end + + +@interface NSMutableString (OnigRegexpUtility) + +// pattern is OnigRegexp or NSString + +// based on ruby's gsub + +- (NSMutableString*)replaceByRegexp:(id)pattern with:(NSString*)string; +- (NSMutableString*)replaceAllByRegexp:(id)pattern with:(NSString*)string; + +- (NSMutableString*)replaceByRegexp:(id)pattern withCallback:(id)object selector:(SEL)sel; +- (NSMutableString*)replaceAllByRegexp:(id)pattern withCallback:(id)object selector:(SEL)sel; + +#if defined(NS_BLOCKS_AVAILABLE) +- (NSMutableString*)replaceByRegexp:(id)pattern withBlock:(NSString* (^)(OnigResult*))block; +- (NSMutableString*)replaceAllByRegexp:(id)pattern withBlock:(NSString* (^)(OnigResult*))block; +#endif +@end diff --git a/frameworks/CocoaOniguruma.framework/Versions/A/Headers/oniguruma.h b/frameworks/CocoaOniguruma.framework/Versions/A/Headers/oniguruma.h new file mode 100644 index 000000000..8c6322c9b --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Versions/A/Headers/oniguruma.h @@ -0,0 +1,770 @@ +#ifndef ONIGURUMA_H +#define ONIGURUMA_H +/********************************************************************** + oniguruma.h - Oniguruma (regular expression library) +**********************************************************************/ +/*- + * Copyright (c) 2002-2009 K.Kosako + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifdef __cplusplus +extern "C" { +#endif + +#define ONIGURUMA +#define ONIGURUMA_VERSION_MAJOR 5 +#define ONIGURUMA_VERSION_MINOR 9 +#define ONIGURUMA_VERSION_TEENY 2 + +#ifdef __cplusplus +# ifndef HAVE_PROTOTYPES +# define HAVE_PROTOTYPES 1 +# endif +# ifndef HAVE_STDARG_PROTOTYPES +# define HAVE_STDARG_PROTOTYPES 1 +# endif +#endif + +/* escape Mac OS X/Xcode 2.4/gcc 4.0.1 problem */ +#if defined(__APPLE__) && defined(__GNUC__) && __GNUC__ >= 4 +# ifndef HAVE_STDARG_PROTOTYPES +# define HAVE_STDARG_PROTOTYPES 1 +# endif +#endif + +#ifdef HAVE_STDARG_H +# ifndef HAVE_STDARG_PROTOTYPES +# define HAVE_STDARG_PROTOTYPES 1 +# endif +#endif + +#ifndef P_ +#if defined(__STDC__) || defined(_WIN32) +# define P_(args) args +#else +# define P_(args) () +#endif +#endif + +#ifndef PV_ +#ifdef HAVE_STDARG_PROTOTYPES +# define PV_(args) args +#else +# define PV_(args) () +#endif +#endif + +#ifndef ONIG_EXTERN +#if defined(_WIN32) && !defined(__GNUC__) +#if defined(EXPORT) || defined(RUBY_EXPORT) +#define ONIG_EXTERN extern __declspec(dllexport) +#else +#define ONIG_EXTERN extern __declspec(dllimport) +#endif +#endif +#endif + +#ifndef ONIG_EXTERN +#define ONIG_EXTERN extern +#endif + +/* PART: character encoding */ + +#ifndef ONIG_ESCAPE_UCHAR_COLLISION +#define UChar OnigUChar +#endif + +typedef unsigned char OnigUChar; +typedef unsigned long OnigCodePoint; +typedef unsigned int OnigCtype; +typedef unsigned int OnigDistance; + +#define ONIG_INFINITE_DISTANCE ~((OnigDistance )0) + +typedef unsigned int OnigCaseFoldType; /* case fold flag */ + +ONIG_EXTERN OnigCaseFoldType OnigDefaultCaseFoldFlag; + +/* #define ONIGENC_CASE_FOLD_HIRAGANA_KATAKANA (1<<1) */ +/* #define ONIGENC_CASE_FOLD_KATAKANA_WIDTH (1<<2) */ +#define ONIGENC_CASE_FOLD_TURKISH_AZERI (1<<20) +#define INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR (1<<30) + +#define ONIGENC_CASE_FOLD_MIN INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR +#define ONIGENC_CASE_FOLD_DEFAULT OnigDefaultCaseFoldFlag + + +#define ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN 3 +#define ONIGENC_GET_CASE_FOLD_CODES_MAX_NUM 13 +/* 13 => Unicode:0x1ffc */ + +/* code range */ +#define ONIGENC_CODE_RANGE_NUM(range) ((int )range[0]) +#define ONIGENC_CODE_RANGE_FROM(range,i) range[((i)*2) + 1] +#define ONIGENC_CODE_RANGE_TO(range,i) range[((i)*2) + 2] + +typedef struct { + int byte_len; /* argument(original) character(s) byte length */ + int code_len; /* number of code */ + OnigCodePoint code[ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN]; +} OnigCaseFoldCodeItem; + +typedef struct { + OnigCodePoint esc; + OnigCodePoint anychar; + OnigCodePoint anytime; + OnigCodePoint zero_or_one_time; + OnigCodePoint one_or_more_time; + OnigCodePoint anychar_anytime; +} OnigMetaCharTableType; + +typedef int (*OnigApplyAllCaseFoldFunc)(OnigCodePoint from, OnigCodePoint* to, int to_len, void* arg); + +typedef struct OnigEncodingTypeST { + int (*mbc_enc_len)(const OnigUChar* p); + const char* name; + int max_enc_len; + int min_enc_len; + int (*is_mbc_newline)(const OnigUChar* p, const OnigUChar* end); + OnigCodePoint (*mbc_to_code)(const OnigUChar* p, const OnigUChar* end); + int (*code_to_mbclen)(OnigCodePoint code); + int (*code_to_mbc)(OnigCodePoint code, OnigUChar *buf); + int (*mbc_case_fold)(OnigCaseFoldType flag, const OnigUChar** pp, const OnigUChar* end, OnigUChar* to); + int (*apply_all_case_fold)(OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void* arg); + int (*get_case_fold_codes_by_str)(OnigCaseFoldType flag, const OnigUChar* p, const OnigUChar* end, OnigCaseFoldCodeItem acs[]); + int (*property_name_to_ctype)(struct OnigEncodingTypeST* enc, OnigUChar* p, OnigUChar* end); + int (*is_code_ctype)(OnigCodePoint code, OnigCtype ctype); + int (*get_ctype_code_range)(OnigCtype ctype, OnigCodePoint* sb_out, const OnigCodePoint* ranges[]); + OnigUChar* (*left_adjust_char_head)(const OnigUChar* start, const OnigUChar* p); + int (*is_allowed_reverse_match)(const OnigUChar* p, const OnigUChar* end); +} OnigEncodingType; + +typedef OnigEncodingType* OnigEncoding; + +ONIG_EXTERN OnigEncodingType OnigEncodingASCII; +ONIG_EXTERN OnigEncodingType OnigEncodingUTF16_BE; +ONIG_EXTERN OnigEncodingType OnigEncodingUTF16_LE; +ONIG_EXTERN OnigEncodingType OnigEncodingUTF32_BE; +ONIG_EXTERN OnigEncodingType OnigEncodingUTF32_LE; + +#define ONIG_ENCODING_ASCII (&OnigEncodingASCII) +#define ONIG_ENCODING_UTF16_BE (&OnigEncodingUTF16_BE) +#define ONIG_ENCODING_UTF16_LE (&OnigEncodingUTF16_LE) +#define ONIG_ENCODING_UTF32_BE (&OnigEncodingUTF32_BE) +#define ONIG_ENCODING_UTF32_LE (&OnigEncodingUTF32_LE) + +#define ONIG_ENCODING_UNDEF ((OnigEncoding )0) + + +/* work size */ +#define ONIGENC_CODE_TO_MBC_MAXLEN 7 +#define ONIGENC_MBC_CASE_FOLD_MAXLEN 18 +/* 18: 6(max-byte) * 3(case-fold chars) */ + +/* character types */ +#define ONIGENC_CTYPE_NEWLINE 0 +#define ONIGENC_CTYPE_ALPHA 1 +#define ONIGENC_CTYPE_BLANK 2 +#define ONIGENC_CTYPE_CNTRL 3 +#define ONIGENC_CTYPE_DIGIT 4 +#define ONIGENC_CTYPE_GRAPH 5 +#define ONIGENC_CTYPE_LOWER 6 +#define ONIGENC_CTYPE_PRINT 7 +#define ONIGENC_CTYPE_PUNCT 8 +#define ONIGENC_CTYPE_SPACE 9 +#define ONIGENC_CTYPE_UPPER 10 +#define ONIGENC_CTYPE_XDIGIT 11 +#define ONIGENC_CTYPE_WORD 12 +#define ONIGENC_CTYPE_ALNUM 13 /* alpha || digit */ +#define ONIGENC_CTYPE_ASCII 14 +#define ONIGENC_MAX_STD_CTYPE ONIGENC_CTYPE_ASCII + + +#define onig_enc_len(enc,p,end) ONIGENC_MBC_ENC_LEN(enc,p) + +#define ONIGENC_IS_UNDEF(enc) ((enc) == ONIG_ENCODING_UNDEF) +#define ONIGENC_IS_SINGLEBYTE(enc) (ONIGENC_MBC_MAXLEN(enc) == 1) +#define ONIGENC_IS_MBC_HEAD(enc,p) (ONIGENC_MBC_ENC_LEN(enc,p) != 1) +#define ONIGENC_IS_MBC_ASCII(p) (*(p) < 128) +#define ONIGENC_IS_CODE_ASCII(code) ((code) < 128) +#define ONIGENC_IS_MBC_WORD(enc,s,end) \ + ONIGENC_IS_CODE_WORD(enc,ONIGENC_MBC_TO_CODE(enc,s,end)) + + +#define ONIGENC_NAME(enc) ((enc)->name) + +#define ONIGENC_MBC_CASE_FOLD(enc,flag,pp,end,buf) \ + (enc)->mbc_case_fold(flag,(const OnigUChar** )pp,end,buf) +#define ONIGENC_IS_ALLOWED_REVERSE_MATCH(enc,s,end) \ + (enc)->is_allowed_reverse_match(s,end) +#define ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc,start,s) \ + (enc)->left_adjust_char_head(start, s) +#define ONIGENC_APPLY_ALL_CASE_FOLD(enc,case_fold_flag,f,arg) \ + (enc)->apply_all_case_fold(case_fold_flag,f,arg) +#define ONIGENC_GET_CASE_FOLD_CODES_BY_STR(enc,case_fold_flag,p,end,acs) \ + (enc)->get_case_fold_codes_by_str(case_fold_flag,p,end,acs) +#define ONIGENC_STEP_BACK(enc,start,s,n) \ + onigenc_step_back((enc),(start),(s),(n)) + +#define ONIGENC_MBC_ENC_LEN(enc,p) (enc)->mbc_enc_len(p) +#define ONIGENC_MBC_MAXLEN(enc) ((enc)->max_enc_len) +#define ONIGENC_MBC_MAXLEN_DIST(enc) ONIGENC_MBC_MAXLEN(enc) +#define ONIGENC_MBC_MINLEN(enc) ((enc)->min_enc_len) +#define ONIGENC_IS_MBC_NEWLINE(enc,p,end) (enc)->is_mbc_newline((p),(end)) +#define ONIGENC_MBC_TO_CODE(enc,p,end) (enc)->mbc_to_code((p),(end)) +#define ONIGENC_CODE_TO_MBCLEN(enc,code) (enc)->code_to_mbclen(code) +#define ONIGENC_CODE_TO_MBC(enc,code,buf) (enc)->code_to_mbc(code,buf) +#define ONIGENC_PROPERTY_NAME_TO_CTYPE(enc,p,end) \ + (enc)->property_name_to_ctype(enc,p,end) + +#define ONIGENC_IS_CODE_CTYPE(enc,code,ctype) (enc)->is_code_ctype(code,ctype) + +#define ONIGENC_IS_CODE_NEWLINE(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_NEWLINE) +#define ONIGENC_IS_CODE_GRAPH(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_GRAPH) +#define ONIGENC_IS_CODE_PRINT(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_PRINT) +#define ONIGENC_IS_CODE_ALNUM(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_ALNUM) +#define ONIGENC_IS_CODE_ALPHA(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_ALPHA) +#define ONIGENC_IS_CODE_LOWER(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_LOWER) +#define ONIGENC_IS_CODE_UPPER(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_UPPER) +#define ONIGENC_IS_CODE_CNTRL(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_CNTRL) +#define ONIGENC_IS_CODE_PUNCT(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_PUNCT) +#define ONIGENC_IS_CODE_SPACE(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_SPACE) +#define ONIGENC_IS_CODE_BLANK(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_BLANK) +#define ONIGENC_IS_CODE_DIGIT(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_DIGIT) +#define ONIGENC_IS_CODE_XDIGIT(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_XDIGIT) +#define ONIGENC_IS_CODE_WORD(enc,code) \ + ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_WORD) + +#define ONIGENC_GET_CTYPE_CODE_RANGE(enc,ctype,sbout,ranges) \ + (enc)->get_ctype_code_range(ctype,sbout,ranges) + +ONIG_EXTERN +OnigUChar* onigenc_step_back P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, int n)); + + +/* encoding API */ +ONIG_EXTERN +int onigenc_init P_((void)); +ONIG_EXTERN +int onigenc_set_default_encoding P_((OnigEncoding enc)); +ONIG_EXTERN +OnigEncoding onigenc_get_default_encoding P_((void)); +ONIG_EXTERN +void onigenc_set_default_caseconv_table P_((const OnigUChar* table)); +ONIG_EXTERN +OnigUChar* onigenc_get_right_adjust_char_head_with_prev P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar** prev)); +ONIG_EXTERN +OnigUChar* onigenc_get_prev_char_head P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s)); +ONIG_EXTERN +OnigUChar* onigenc_get_left_adjust_char_head P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s)); +ONIG_EXTERN +OnigUChar* onigenc_get_right_adjust_char_head P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s)); +ONIG_EXTERN +int onigenc_strlen P_((OnigEncoding enc, const OnigUChar* p, const OnigUChar* end)); +ONIG_EXTERN +int onigenc_strlen_null P_((OnigEncoding enc, const OnigUChar* p)); +ONIG_EXTERN +int onigenc_str_bytelen_null P_((OnigEncoding enc, const OnigUChar* p)); + + + +/* PART: regular expression */ + +/* config parameters */ +#define ONIG_NREGION 10 +#define ONIG_MAX_BACKREF_NUM 1000 +#define ONIG_MAX_REPEAT_NUM 100000 +#define ONIG_MAX_MULTI_BYTE_RANGES_NUM 10000 +/* constants */ +#define ONIG_MAX_ERROR_MESSAGE_LEN 90 + +typedef unsigned int OnigOptionType; + +#define ONIG_OPTION_DEFAULT ONIG_OPTION_NONE + +/* options */ +#define ONIG_OPTION_NONE 0U +#define ONIG_OPTION_IGNORECASE 1U +#define ONIG_OPTION_EXTEND (ONIG_OPTION_IGNORECASE << 1) +#define ONIG_OPTION_MULTILINE (ONIG_OPTION_EXTEND << 1) +#define ONIG_OPTION_SINGLELINE (ONIG_OPTION_MULTILINE << 1) +#define ONIG_OPTION_FIND_LONGEST (ONIG_OPTION_SINGLELINE << 1) +#define ONIG_OPTION_FIND_NOT_EMPTY (ONIG_OPTION_FIND_LONGEST << 1) +#define ONIG_OPTION_NEGATE_SINGLELINE (ONIG_OPTION_FIND_NOT_EMPTY << 1) +#define ONIG_OPTION_DONT_CAPTURE_GROUP (ONIG_OPTION_NEGATE_SINGLELINE << 1) +#define ONIG_OPTION_CAPTURE_GROUP (ONIG_OPTION_DONT_CAPTURE_GROUP << 1) +/* options (search time) */ +#define ONIG_OPTION_NOTBOL (ONIG_OPTION_CAPTURE_GROUP << 1) +#define ONIG_OPTION_NOTEOL (ONIG_OPTION_NOTBOL << 1) +#define ONIG_OPTION_POSIX_REGION (ONIG_OPTION_NOTEOL << 1) +#define ONIG_OPTION_MAXBIT ONIG_OPTION_POSIX_REGION /* limit */ + +#define ONIG_OPTION_ON(options,regopt) ((options) |= (regopt)) +#define ONIG_OPTION_OFF(options,regopt) ((options) &= ~(regopt)) +#define ONIG_IS_OPTION_ON(options,option) ((options) & (option)) + +/* syntax */ +typedef struct { + unsigned int op; + unsigned int op2; + unsigned int behavior; + OnigOptionType options; /* default option */ + OnigMetaCharTableType meta_char_table; +} OnigSyntaxType; + +ONIG_EXTERN OnigSyntaxType OnigSyntaxASIS; +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 OnigSyntaxPerl_NG; +ONIG_EXTERN OnigSyntaxType OnigSyntaxRuby; + +/* predefined syntaxes (see regsyntax.c) */ +#define ONIG_SYNTAX_ASIS (&OnigSyntaxASIS) +#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_PERL_NG (&OnigSyntaxPerl_NG) +#define ONIG_SYNTAX_RUBY (&OnigSyntaxRuby) + +/* default syntax */ +ONIG_EXTERN OnigSyntaxType* OnigDefaultSyntax; +#define ONIG_SYNTAX_DEFAULT OnigDefaultSyntax + +/* syntax (operators) */ +#define ONIG_SYN_OP_VARIABLE_META_CHARACTERS (1U<<0) +#define ONIG_SYN_OP_DOT_ANYCHAR (1U<<1) /* . */ +#define ONIG_SYN_OP_ASTERISK_ZERO_INF (1U<<2) /* * */ +#define ONIG_SYN_OP_ESC_ASTERISK_ZERO_INF (1U<<3) +#define ONIG_SYN_OP_PLUS_ONE_INF (1U<<4) /* + */ +#define ONIG_SYN_OP_ESC_PLUS_ONE_INF (1U<<5) +#define ONIG_SYN_OP_QMARK_ZERO_ONE (1U<<6) /* ? */ +#define ONIG_SYN_OP_ESC_QMARK_ZERO_ONE (1U<<7) +#define ONIG_SYN_OP_BRACE_INTERVAL (1U<<8) /* {lower,upper} */ +#define ONIG_SYN_OP_ESC_BRACE_INTERVAL (1U<<9) /* \{lower,upper\} */ +#define ONIG_SYN_OP_VBAR_ALT (1U<<10) /* | */ +#define ONIG_SYN_OP_ESC_VBAR_ALT (1U<<11) /* \| */ +#define ONIG_SYN_OP_LPAREN_SUBEXP (1U<<12) /* (...) */ +#define ONIG_SYN_OP_ESC_LPAREN_SUBEXP (1U<<13) /* \(...\) */ +#define ONIG_SYN_OP_ESC_AZ_BUF_ANCHOR (1U<<14) /* \A, \Z, \z */ +#define ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR (1U<<15) /* \G */ +#define ONIG_SYN_OP_DECIMAL_BACKREF (1U<<16) /* \num */ +#define ONIG_SYN_OP_BRACKET_CC (1U<<17) /* [...] */ +#define ONIG_SYN_OP_ESC_W_WORD (1U<<18) /* \w, \W */ +#define ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END (1U<<19) /* \<. \> */ +#define ONIG_SYN_OP_ESC_B_WORD_BOUND (1U<<20) /* \b, \B */ +#define ONIG_SYN_OP_ESC_S_WHITE_SPACE (1U<<21) /* \s, \S */ +#define ONIG_SYN_OP_ESC_D_DIGIT (1U<<22) /* \d, \D */ +#define ONIG_SYN_OP_LINE_ANCHOR (1U<<23) /* ^, $ */ +#define ONIG_SYN_OP_POSIX_BRACKET (1U<<24) /* [:xxxx:] */ +#define ONIG_SYN_OP_QMARK_NON_GREEDY (1U<<25) /* ??,*?,+?,{n,m}? */ +#define ONIG_SYN_OP_ESC_CONTROL_CHARS (1U<<26) /* \n,\r,\t,\a ... */ +#define ONIG_SYN_OP_ESC_C_CONTROL (1U<<27) /* \cx */ +#define ONIG_SYN_OP_ESC_OCTAL3 (1U<<28) /* \OOO */ +#define ONIG_SYN_OP_ESC_X_HEX2 (1U<<29) /* \xHH */ +#define ONIG_SYN_OP_ESC_X_BRACE_HEX8 (1U<<30) /* \x{7HHHHHHH} */ + +#define ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE (1U<<0) /* \Q...\E */ +#define ONIG_SYN_OP2_QMARK_GROUP_EFFECT (1U<<1) /* (?...) */ +#define ONIG_SYN_OP2_OPTION_PERL (1U<<2) /* (?imsx),(?-imsx) */ +#define ONIG_SYN_OP2_OPTION_RUBY (1U<<3) /* (?imx), (?-imx) */ +#define ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT (1U<<4) /* ?+,*+,++ */ +#define ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL (1U<<5) /* {n,m}+ */ +#define ONIG_SYN_OP2_CCLASS_SET_OP (1U<<6) /* [...&&..[..]..] */ +#define ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP (1U<<7) /* (?...) */ +#define ONIG_SYN_OP2_ESC_K_NAMED_BACKREF (1U<<8) /* \k */ +#define ONIG_SYN_OP2_ESC_G_SUBEXP_CALL (1U<<9) /* \g, \g */ +#define ONIG_SYN_OP2_ATMARK_CAPTURE_HISTORY (1U<<10) /* (?@..),(?@..) */ +#define ONIG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL (1U<<11) /* \C-x */ +#define ONIG_SYN_OP2_ESC_CAPITAL_M_BAR_META (1U<<12) /* \M-x */ +#define ONIG_SYN_OP2_ESC_V_VTAB (1U<<13) /* \v as VTAB */ +#define ONIG_SYN_OP2_ESC_U_HEX4 (1U<<14) /* \uHHHH */ +#define ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR (1U<<15) /* \`, \' */ +#define ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY (1U<<16) /* \p{...}, \P{...} */ +#define ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT (1U<<17) /* \p{^..}, \P{^..} */ +/* #define ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS (1U<<18) */ +#define ONIG_SYN_OP2_ESC_H_XDIGIT (1U<<19) /* \h, \H */ +#define ONIG_SYN_OP2_INEFFECTIVE_ESCAPE (1U<<20) /* \ */ + +/* syntax (behavior) */ +#define ONIG_SYN_CONTEXT_INDEP_ANCHORS (1U<<31) /* not implemented */ +#define ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS (1U<<0) /* ?, *, +, {n,m} */ +#define ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS (1U<<1) /* error or ignore */ +#define ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP (1U<<2) /* ...)... */ +#define ONIG_SYN_ALLOW_INVALID_INTERVAL (1U<<3) /* {??? */ +#define ONIG_SYN_ALLOW_INTERVAL_LOW_ABBREV (1U<<4) /* {,n} => {0,n} */ +#define ONIG_SYN_STRICT_CHECK_BACKREF (1U<<5) /* /(\1)/,/\1()/ ..*/ +#define ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND (1U<<6) /* (?<=a|bc) */ +#define ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP (1U<<7) /* see doc/RE */ +#define ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME (1U<<8) /* (?)(?) */ +#define ONIG_SYN_FIXED_INTERVAL_IS_GREEDY_ONLY (1U<<9) /* a{n}?=(?:a{n})? */ + +/* syntax (behavior) in char class [...] */ +#define ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC (1U<<20) /* [^...] */ +#define ONIG_SYN_BACKSLASH_ESCAPE_IN_CC (1U<<21) /* [..\w..] etc.. */ +#define ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC (1U<<22) +#define ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC (1U<<23) /* [0-9-a]=[0-9\-a] */ +/* syntax (behavior) warning */ +#define ONIG_SYN_WARN_CC_OP_NOT_ESCAPED (1U<<24) /* [,-,] */ +#define ONIG_SYN_WARN_REDUNDANT_NESTED_REPEAT (1U<<25) /* (?:a*)+ */ + +/* meta character specifiers (onig_set_meta_char()) */ +#define ONIG_META_CHAR_ESCAPE 0 +#define ONIG_META_CHAR_ANYCHAR 1 +#define ONIG_META_CHAR_ANYTIME 2 +#define ONIG_META_CHAR_ZERO_OR_ONE_TIME 3 +#define ONIG_META_CHAR_ONE_OR_MORE_TIME 4 +#define ONIG_META_CHAR_ANYCHAR_ANYTIME 5 + +#define ONIG_INEFFECTIVE_META_CHAR 0 + +/* error codes */ +#define ONIG_IS_PATTERN_ERROR(ecode) ((ecode) <= -100 && (ecode) > -1000) +/* normal return */ +#define ONIG_NORMAL 0 +#define ONIG_MISMATCH -1 +#define ONIG_NO_SUPPORT_CONFIG -2 + +/* internal error */ +#define ONIGERR_MEMORY -5 +#define ONIGERR_TYPE_BUG -6 +#define ONIGERR_PARSER_BUG -11 +#define ONIGERR_STACK_BUG -12 +#define ONIGERR_UNDEFINED_BYTECODE -13 +#define ONIGERR_UNEXPECTED_BYTECODE -14 +#define ONIGERR_MATCH_STACK_LIMIT_OVER -15 +#define ONIGERR_DEFAULT_ENCODING_IS_NOT_SETTED -21 +#define ONIGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR -22 +/* general error */ +#define ONIGERR_INVALID_ARGUMENT -30 +/* syntax error */ +#define ONIGERR_END_PATTERN_AT_LEFT_BRACE -100 +#define ONIGERR_END_PATTERN_AT_LEFT_BRACKET -101 +#define ONIGERR_EMPTY_CHAR_CLASS -102 +#define ONIGERR_PREMATURE_END_OF_CHAR_CLASS -103 +#define ONIGERR_END_PATTERN_AT_ESCAPE -104 +#define ONIGERR_END_PATTERN_AT_META -105 +#define ONIGERR_END_PATTERN_AT_CONTROL -106 +#define ONIGERR_META_CODE_SYNTAX -108 +#define ONIGERR_CONTROL_CODE_SYNTAX -109 +#define ONIGERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE -110 +#define ONIGERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE -111 +#define ONIGERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS -112 +#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED -113 +#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_INVALID -114 +#define ONIGERR_NESTED_REPEAT_OPERATOR -115 +#define ONIGERR_UNMATCHED_CLOSE_PARENTHESIS -116 +#define ONIGERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS -117 +#define ONIGERR_END_PATTERN_IN_GROUP -118 +#define ONIGERR_UNDEFINED_GROUP_OPTION -119 +#define ONIGERR_INVALID_POSIX_BRACKET_TYPE -121 +#define ONIGERR_INVALID_LOOK_BEHIND_PATTERN -122 +#define ONIGERR_INVALID_REPEAT_RANGE_PATTERN -123 +/* values error (syntax error) */ +#define ONIGERR_TOO_BIG_NUMBER -200 +#define ONIGERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE -201 +#define ONIGERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE -202 +#define ONIGERR_EMPTY_RANGE_IN_CHAR_CLASS -203 +#define ONIGERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE -204 +#define ONIGERR_TOO_MANY_MULTI_BYTE_RANGES -205 +#define ONIGERR_TOO_SHORT_MULTI_BYTE_STRING -206 +#define ONIGERR_TOO_BIG_BACKREF_NUMBER -207 +#define ONIGERR_INVALID_BACKREF -208 +#define ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED -209 +#define ONIGERR_TOO_LONG_WIDE_CHAR_VALUE -212 +#define ONIGERR_EMPTY_GROUP_NAME -214 +#define ONIGERR_INVALID_GROUP_NAME -215 +#define ONIGERR_INVALID_CHAR_IN_GROUP_NAME -216 +#define ONIGERR_UNDEFINED_NAME_REFERENCE -217 +#define ONIGERR_UNDEFINED_GROUP_REFERENCE -218 +#define ONIGERR_MULTIPLEX_DEFINED_NAME -219 +#define ONIGERR_MULTIPLEX_DEFINITION_NAME_CALL -220 +#define ONIGERR_NEVER_ENDING_RECURSION -221 +#define ONIGERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY -222 +#define ONIGERR_INVALID_CHAR_PROPERTY_NAME -223 +#define ONIGERR_INVALID_CODE_POINT_VALUE -400 +#define ONIGERR_INVALID_WIDE_CHAR_VALUE -400 +#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE -401 +#define ONIGERR_NOT_SUPPORTED_ENCODING_COMBINATION -402 +#define ONIGERR_INVALID_COMBINATION_OF_OPTIONS -403 + +/* errors related to thread */ +#define ONIGERR_OVER_THREAD_PASS_LIMIT_COUNT -1001 + + +/* must be smaller than BIT_STATUS_BITS_NUM (unsigned int * 8) */ +#define ONIG_MAX_CAPTURE_HISTORY_GROUP 31 +#define ONIG_IS_CAPTURE_HISTORY_GROUP(r, i) \ + ((i) <= ONIG_MAX_CAPTURE_HISTORY_GROUP && (r)->list && (r)->list[i]) + +typedef struct OnigCaptureTreeNodeStruct { + int group; /* group number */ + int beg; + int end; + int allocated; + int num_childs; + struct OnigCaptureTreeNodeStruct** childs; +} OnigCaptureTreeNode; + +/* match result region type */ +struct re_registers { + int allocated; + int num_regs; + int* beg; + int* end; + /* extended */ + OnigCaptureTreeNode* history_root; /* capture history tree root */ +}; + +/* capture tree traverse */ +#define ONIG_TRAVERSE_CALLBACK_AT_FIRST 1 +#define ONIG_TRAVERSE_CALLBACK_AT_LAST 2 +#define ONIG_TRAVERSE_CALLBACK_AT_BOTH \ + ( ONIG_TRAVERSE_CALLBACK_AT_FIRST | ONIG_TRAVERSE_CALLBACK_AT_LAST ) + + +#define ONIG_REGION_NOTPOS -1 + +typedef struct re_registers OnigRegion; + +typedef struct { + OnigEncoding enc; + OnigUChar* par; + OnigUChar* par_end; +} OnigErrorInfo; + +typedef struct { + int lower; + int upper; +} OnigRepeatRange; + +typedef void (*OnigWarnFunc) P_((const char* s)); +extern void onig_null_warn P_((const char* s)); +#define ONIG_NULL_WARN onig_null_warn + +#define ONIG_CHAR_TABLE_SIZE 256 + +/* regex_t state */ +#define ONIG_STATE_NORMAL 0 +#define ONIG_STATE_SEARCHING 1 +#define ONIG_STATE_COMPILING -1 +#define ONIG_STATE_MODIFY -2 + +#define ONIG_STATE(reg) \ + ((reg)->state > 0 ? ONIG_STATE_SEARCHING : (reg)->state) + +typedef struct re_pattern_buffer { + /* common members of BBuf(bytes-buffer) */ + unsigned char* p; /* compiled pattern */ + unsigned int used; /* used space for p */ + unsigned int alloc; /* allocated space for p */ + + int state; /* normal, searching, compiling */ + int num_mem; /* used memory(...) num counted from 1 */ + int num_repeat; /* OP_REPEAT/OP_REPEAT_NG id-counter */ + int num_null_check; /* OP_NULL_CHECK_START/END id counter */ + int num_comb_exp_check; /* combination explosion check */ + int num_call; /* number of subexp call */ + unsigned int capture_history; /* (?@...) flag (1-31) */ + unsigned int bt_mem_start; /* need backtrack flag */ + unsigned int bt_mem_end; /* need backtrack flag */ + int stack_pop_level; + int repeat_range_alloc; + OnigRepeatRange* repeat_range; + + OnigEncoding enc; + OnigOptionType options; + OnigSyntaxType* syntax; + OnigCaseFoldType case_fold_flag; + void* name_table; + + /* optimization info (string search, char-map and anchors) */ + int optimize; /* optimize flag */ + int threshold_len; /* search str-length for apply optimize */ + int anchor; /* BEGIN_BUF, BEGIN_POS, (SEMI_)END_BUF */ + OnigDistance anchor_dmin; /* (SEMI_)END_BUF anchor distance */ + OnigDistance anchor_dmax; /* (SEMI_)END_BUF anchor distance */ + int sub_anchor; /* start-anchor for exact or map */ + unsigned char *exact; + unsigned char *exact_end; + unsigned char map[ONIG_CHAR_TABLE_SIZE]; /* used as BM skip or char-map */ + int *int_map; /* BM skip for exact_len > 255 */ + int *int_map_backward; /* BM skip for backward search */ + OnigDistance dmin; /* min-distance of exact or map */ + OnigDistance dmax; /* max-distance of exact or map */ + + /* regex_t link chain */ + struct re_pattern_buffer* chain; /* escape compile-conflict */ +} OnigRegexType; + +typedef OnigRegexType* OnigRegex; + +#ifndef ONIG_ESCAPE_REGEX_T_COLLISION + typedef OnigRegexType regex_t; +#endif + + +typedef struct { + int num_of_elements; + OnigEncoding pattern_enc; + OnigEncoding target_enc; + OnigSyntaxType* syntax; + OnigOptionType option; + OnigCaseFoldType case_fold_flag; +} OnigCompileInfo; + +/* Oniguruma Native API */ +ONIG_EXTERN +int onig_init P_((void)); +ONIG_EXTERN +int onig_error_code_to_str PV_((OnigUChar* s, int err_code, ...)); +ONIG_EXTERN +void onig_set_warn_func P_((OnigWarnFunc f)); +ONIG_EXTERN +void onig_set_verb_warn_func P_((OnigWarnFunc f)); +ONIG_EXTERN +int onig_new P_((OnigRegex*, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo)); +ONIG_EXTERN +int onig_reg_init P_((regex_t* reg, OnigOptionType option, OnigCaseFoldType case_fold_flag, OnigEncoding enc, OnigSyntaxType* syntax)); +int onig_new_without_alloc P_((OnigRegex, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo)); +ONIG_EXTERN +int onig_new_deluxe P_((OnigRegex* reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo)); +ONIG_EXTERN +void onig_free P_((OnigRegex)); +ONIG_EXTERN +void onig_free_body P_((OnigRegex)); +ONIG_EXTERN +int onig_recompile P_((OnigRegex, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo)); +ONIG_EXTERN +int onig_recompile_deluxe P_((OnigRegex reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo)); +ONIG_EXTERN +int onig_search P_((OnigRegex, const OnigUChar* str, const OnigUChar* end, const OnigUChar* start, const OnigUChar* range, OnigRegion* region, OnigOptionType option)); +ONIG_EXTERN +int onig_match P_((OnigRegex, const OnigUChar* str, const OnigUChar* end, const OnigUChar* at, OnigRegion* region, OnigOptionType option)); +ONIG_EXTERN +OnigRegion* onig_region_new P_((void)); +ONIG_EXTERN +void onig_region_init P_((OnigRegion* region)); +ONIG_EXTERN +void onig_region_free P_((OnigRegion* region, int free_self)); +ONIG_EXTERN +void onig_region_copy P_((OnigRegion* to, OnigRegion* from)); +ONIG_EXTERN +void onig_region_clear P_((OnigRegion* region)); +ONIG_EXTERN +int onig_region_resize P_((OnigRegion* region, int n)); +ONIG_EXTERN +int onig_region_set P_((OnigRegion* region, int at, int beg, int end)); +ONIG_EXTERN +int onig_name_to_group_numbers P_((OnigRegex reg, const OnigUChar* name, const OnigUChar* name_end, int** nums)); +ONIG_EXTERN +int onig_name_to_backref_number P_((OnigRegex reg, const OnigUChar* name, const OnigUChar* name_end, OnigRegion *region)); +ONIG_EXTERN +int onig_foreach_name P_((OnigRegex reg, int (*func)(const OnigUChar*, const OnigUChar*,int,int*,OnigRegex,void*), void* arg)); +ONIG_EXTERN +int onig_number_of_names P_((OnigRegex reg)); +ONIG_EXTERN +int onig_number_of_captures P_((OnigRegex reg)); +ONIG_EXTERN +int onig_number_of_capture_histories P_((OnigRegex reg)); +ONIG_EXTERN +OnigCaptureTreeNode* onig_get_capture_tree P_((OnigRegion* region)); +ONIG_EXTERN +int onig_capture_tree_traverse P_((OnigRegion* region, int at, int(*callback_func)(int,int,int,int,int,void*), void* arg)); +ONIG_EXTERN +int onig_noname_group_capture_is_active P_((OnigRegex reg)); +ONIG_EXTERN +OnigEncoding onig_get_encoding P_((OnigRegex reg)); +ONIG_EXTERN +OnigOptionType onig_get_options P_((OnigRegex reg)); +ONIG_EXTERN +OnigCaseFoldType onig_get_case_fold_flag P_((OnigRegex reg)); +ONIG_EXTERN +OnigSyntaxType* onig_get_syntax P_((OnigRegex reg)); +ONIG_EXTERN +int onig_set_default_syntax P_((OnigSyntaxType* syntax)); +ONIG_EXTERN +void onig_copy_syntax P_((OnigSyntaxType* to, OnigSyntaxType* from)); +ONIG_EXTERN +unsigned int onig_get_syntax_op P_((OnigSyntaxType* syntax)); +ONIG_EXTERN +unsigned int onig_get_syntax_op2 P_((OnigSyntaxType* syntax)); +ONIG_EXTERN +unsigned int onig_get_syntax_behavior P_((OnigSyntaxType* syntax)); +ONIG_EXTERN +OnigOptionType onig_get_syntax_options P_((OnigSyntaxType* syntax)); +ONIG_EXTERN +void onig_set_syntax_op P_((OnigSyntaxType* syntax, unsigned int op)); +ONIG_EXTERN +void onig_set_syntax_op2 P_((OnigSyntaxType* syntax, unsigned int op2)); +ONIG_EXTERN +void onig_set_syntax_behavior P_((OnigSyntaxType* syntax, unsigned int behavior)); +ONIG_EXTERN +void onig_set_syntax_options P_((OnigSyntaxType* syntax, OnigOptionType options)); +ONIG_EXTERN +int onig_set_meta_char P_((OnigSyntaxType* syntax, unsigned int what, OnigCodePoint code)); +ONIG_EXTERN +void onig_copy_encoding P_((OnigEncoding to, OnigEncoding from)); +ONIG_EXTERN +OnigCaseFoldType onig_get_default_case_fold_flag P_((void)); +ONIG_EXTERN +int onig_set_default_case_fold_flag P_((OnigCaseFoldType case_fold_flag)); +ONIG_EXTERN +unsigned int onig_get_match_stack_limit_size P_((void)); +ONIG_EXTERN +int onig_set_match_stack_limit_size P_((unsigned int size)); +ONIG_EXTERN +int onig_end P_((void)); +ONIG_EXTERN +const char* onig_version P_((void)); +ONIG_EXTERN +const char* onig_copyright P_((void)); + +#ifdef __cplusplus +} +#endif + +#endif /* ONIGURUMA_H */ diff --git a/frameworks/CocoaOniguruma.framework/Versions/A/Resources/English.lproj/InfoPlist.strings b/frameworks/CocoaOniguruma.framework/Versions/A/Resources/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..39d5b82c7a6c406ab1adc9b76c29ce538c2bedea GIT binary patch literal 218 zcmZvW%L>9U5Jk_Y1lQsZh$}Zjp@M!v+Da=vBHB{?dG(~-y0}SZ?wvFFeoBt)7`PF+ zbKvCNsEVuaEr|zjo}6jv=m~7pVsdKT$lkf^4yI;Kuzs1U?POl>*;rSSg8OnOndr;~ hO6!Yi)u@(JGV0G$Nq+ddW#$#E^oxm@Ny*=>`2l05C|Lji literal 0 HcmV?d00001 diff --git a/frameworks/CocoaOniguruma.framework/Versions/A/Resources/Info.plist b/frameworks/CocoaOniguruma.framework/Versions/A/Resources/Info.plist new file mode 100644 index 000000000..1ef6f6187 --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,38 @@ + + + + + BuildMachineOSBuild + 11E53 + CFBundleDevelopmentRegion + English + CFBundleExecutable + CocoaOniguruma + CFBundleIdentifier + net.limechat.CocoaOniguruma + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + CocoaOniguruma + CFBundlePackageType + FMWK + CFBundleSignature + ???? + CFBundleVersion + 1.0 + DTCompiler + + DTPlatformBuild + 4F250 + DTPlatformVersion + GM + DTSDKBuild + 11E53 + DTSDKName + + DTXcode + 0440 + DTXcodeBuild + 4F250 + + diff --git a/frameworks/CocoaOniguruma.framework/Versions/Current b/frameworks/CocoaOniguruma.framework/Versions/Current new file mode 120000 index 000000000..8c7e5a667 --- /dev/null +++ b/frameworks/CocoaOniguruma.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/spec/stdlib/onig-reg-exp-spec.coffee b/spec/stdlib/onig-reg-exp-spec.coffee new file mode 100644 index 000000000..f830aafce --- /dev/null +++ b/spec/stdlib/onig-reg-exp-spec.coffee @@ -0,0 +1,2 @@ +describe "", -> + diff --git a/spec/stdlib/onig-regexp-spec.coffee b/spec/stdlib/onig-regexp-spec.coffee new file mode 100644 index 000000000..b6b8cd9d8 --- /dev/null +++ b/spec/stdlib/onig-regexp-spec.coffee @@ -0,0 +1,13 @@ +describe "OnigRegExp", -> + describe ".search(string, index)", -> + it "returns an array of the match and all capture groups", -> + regex = new OnigRegExp("\\w(\\d+)") + result = regex.search("----a123----") + expect(result).toEqual ["a123", "123"] + expect(result.index).toBe 4 + + it "returns null if it does not match", -> + regex = new OnigRegExp("\\w(\\d+)") + result = regex.search("--------") + expect(result).toBeNull() + diff --git a/src/stdlib/onig-reg-exp-extension.js b/src/stdlib/onig-reg-exp-extension.js new file mode 100644 index 000000000..80c471692 --- /dev/null +++ b/src/stdlib/onig-reg-exp-extension.js @@ -0,0 +1,16 @@ +(function() { + native function buildOnigRegExp(source); + native function search(string, index); + + function OnigRegExp(source) { + var regexp = buildOnigRegExp(source); + regexp.constructor = OnigRegExp; + regexp.__proto__ = OnigRegExp.prototype; + return regexp; + } + + OnigRegExp.prototype.search = search; + + this.OnigRegExp = OnigRegExp; +})(); + diff --git a/src/stdlib/onig-regexp-extension.js b/src/stdlib/onig-regexp-extension.js deleted file mode 100644 index 5dfbeb2b1..000000000 --- a/src/stdlib/onig-regexp-extension.js +++ /dev/null @@ -1,16 +0,0 @@ -(function() { - native function buildOnigRegexp(source); - native function exec(string); - - function OnigRegexp(source) { - var regexp = buildOnigRegexp(source); - regexp.constructor = OnigRegexp; - regexp.__proto__ = OnigRegexp.prototype; - return regexp; - } - - OnigRegexp.prototype.exec = exec; - - this.OnigRegexp = OnigRegexp; -})(); -