Author: [EMAIL PROTECTED]
Date: Wed Nov 26 14:45:21 2008
New Revision: 849
Modified:
branches/bleeding_edge/src/jsregexp.cc
branches/bleeding_edge/src/third_party/jscre/pcre.h
branches/bleeding_edge/src/third_party/jscre/pcre_compile.cpp
branches/bleeding_edge/src/third_party/jscre/pcre_exec.cpp
branches/bleeding_edge/src/third_party/jscre/pcre_internal.h
branches/bleeding_edge/src/third_party/jscre/pcre_tables.cpp
branches/bleeding_edge/src/third_party/jscre/pcre_ucp_searchfuncs.cpp
branches/bleeding_edge/src/third_party/jscre/pcre_xclass.cpp
Log:
Add v8::jscre namespace around jscre functions to avoid link errors with
jsc pcre files in Chrome.
Review URL: http://codereview.chromium.org/12496
Modified: branches/bleeding_edge/src/jsregexp.cc
==============================================================================
--- branches/bleeding_edge/src/jsregexp.cc (original)
+++ branches/bleeding_edge/src/jsregexp.cc Wed Nov 26 14:45:21 2008
@@ -378,23 +378,23 @@
JSRegExp::Flags flags,
unsigned* number_of_captures,
const char** error_message,
- JscreRegExp** code) {
- JSRegExpIgnoreCaseOption case_option = flags.is_ignore_case()
- ? JSRegExpIgnoreCase
- : JSRegExpDoNotIgnoreCase;
- JSRegExpMultilineOption multiline_option = flags.is_multiline()
- ? JSRegExpMultiline
- : JSRegExpSingleLine;
+ v8::jscre::JscreRegExp** code) {
+ v8::jscre::JSRegExpIgnoreCaseOption case_option = flags.is_ignore_case()
+ ? v8::jscre::JSRegExpIgnoreCase
+ : v8::jscre::JSRegExpDoNotIgnoreCase;
+ v8::jscre::JSRegExpMultilineOption multiline_option =
flags.is_multiline()
+ ? v8::jscre::JSRegExpMultiline
+ : v8::jscre::JSRegExpSingleLine;
*error_message = NULL;
malloc_failure = Failure::Exception();
- *code = jsRegExpCompile(pattern->GetTwoByteData(),
- pattern->length(),
- case_option,
- multiline_option,
- number_of_captures,
- error_message,
- &JSREMalloc,
- &JSREFree);
+ *code = v8::jscre::jsRegExpCompile(pattern->GetTwoByteData(),
+ pattern->length(),
+ case_option,
+ multiline_option,
+ number_of_captures,
+ error_message,
+ &JSREMalloc,
+ &JSREFree);
if (*code == NULL && (malloc_failure->IsRetryAfterGC() ||
malloc_failure->IsOutOfMemoryFailure())) {
return malloc_failure;
@@ -411,7 +411,7 @@
JSRegExp::Flags flags,
unsigned* number_of_captures,
const char** error_message,
- JscreRegExp** code) {
+ v8::jscre::JscreRegExp** code) {
CALL_HEAP_FUNCTION_VOID(DoCompile(*pattern,
flags,
number_of_captures,
@@ -432,7 +432,7 @@
unsigned number_of_captures;
const char* error_message = NULL;
- JscreRegExp* code = NULL;
+ v8::jscre::JscreRegExp* code = NULL;
FlattenString(pattern);
CompileWithRetryAfterGC(two_byte_pattern,
@@ -560,23 +560,24 @@
{
AssertNoAllocation a;
ByteArray* internal = JscreInternal(regexp);
- const JscreRegExp* js_regexp =
- reinterpret_cast<JscreRegExp*>(internal->GetDataStartAddress());
+ const v8::jscre::JscreRegExp* js_regexp =
+ reinterpret_cast<v8::jscre::JscreRegExp*>(
+ internal->GetDataStartAddress());
LOG(RegExpExecEvent(regexp, previous_index, subject));
- rc = jsRegExpExecute(js_regexp,
- two_byte_subject,
- subject->length(),
- previous_index,
- offsets_vector,
- offsets_vector_length);
+ rc = v8::jscre::jsRegExpExecute(js_regexp,
+ two_byte_subject,
+ subject->length(),
+ previous_index,
+ offsets_vector,
+ offsets_vector_length);
}
// The KJS JavaScript engine returns null (ie, a failed match) when
// JSRE's internal match limit is exceeded. We duplicate that behavior
here.
- if (rc == JSRegExpErrorNoMatch
- || rc == JSRegExpErrorHitLimit) {
+ if (rc == v8::jscre::JSRegExpErrorNoMatch
+ || rc == v8::jscre::JSRegExpErrorHitLimit) {
return Factory::null_value();
}
Modified: branches/bleeding_edge/src/third_party/jscre/pcre.h
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre.h (original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre.h Wed Nov 26 14:45:21
2008
@@ -49,6 +49,8 @@
// we allow DEBUG to be set and undef it manually.
#undef DEBUG
+namespace v8 { namespace jscre {
+
typedef uint16_t UChar;
struct JSRegExp;
@@ -76,5 +78,7 @@
int* offsetsVector, int offsetsVectorLength);
void jsRegExpFree(JSRegExp*);
+
+} } // namespace v8::jscre
#endif
Modified: branches/bleeding_edge/src/third_party/jscre/pcre_compile.cpp
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_compile.cpp
(original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_compile.cpp Wed Nov
26 14:45:21 2008
@@ -65,6 +65,8 @@
#define BRASTACK_SIZE 200
+namespace v8 { namespace jscre {
+
/* Table for handling escaped characters in the range '0'-'z'. Positive
returns
are simple data values; negative values are for special things like \d and
so
on. Zero means further processing is needed (for things like \x), or the
escape
@@ -2671,3 +2673,5 @@
{
(*free_function)(reinterpret_cast<void*>(re));
}
+
+} } // namespace v8::jscre
Modified: branches/bleeding_edge/src/third_party/jscre/pcre_exec.cpp
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_exec.cpp (original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_exec.cpp Wed Nov 26
14:45:21 2008
@@ -61,6 +61,8 @@
#undef min
#undef max
+namespace v8 { namespace jscre {
+
#ifndef USE_COMPUTED_GOTO_FOR_MATCH_RECURSION
typedef int ReturnLocation;
#else
@@ -2079,3 +2081,5 @@
DPRINTF((">>>> returning PCRE_ERROR_NOMATCH\n"));
return JSRegExpErrorNoMatch;
}
+
+} } // namespace v8::jscre
Modified: branches/bleeding_edge/src/third_party/jscre/pcre_internal.h
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_internal.h
(original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_internal.h Wed Nov
26
14:45:21 2008
@@ -103,6 +103,8 @@
#define DPRINTF(p) /*nothing*/
#endif
+namespace v8 { namespace jscre {
+
/* PCRE keeps offsets in its compiled code as 2-byte quantities (always
stored
in big-endian order) by default. These are used, for example, to link from
the
start of a subpattern to its alternatives and its end. The use of 2 bytes
per
@@ -416,6 +418,7 @@
extern int kjs_pcre_ucp_othercase(unsigned);
extern bool kjs_pcre_xclass(int, const unsigned char*);
+} } // namespace v8::jscre
#endif
#endif
Modified: branches/bleeding_edge/src/third_party/jscre/pcre_tables.cpp
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_tables.cpp
(original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_tables.cpp Wed Nov
26
14:45:21 2008
@@ -42,6 +42,8 @@
#include "pcre_internal.h"
+namespace v8 { namespace jscre {
+
/*************************************************
* Tables for UTF-8 support *
*************************************************/
@@ -69,3 +71,5 @@
3,3,3,3,3,3,3,3,4,4,4,4,5,5,5,5 };
#include "pcre_chartables.c"
+
+} } // namespace v8::jscre
Modified:
branches/bleeding_edge/src/third_party/jscre/pcre_ucp_searchfuncs.cpp
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_ucp_searchfuncs.cpp
(original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_ucp_searchfuncs.cpp
Wed Nov 26 14:45:21 2008
@@ -46,6 +46,8 @@
#include "ucpinternal.h" /* Internal table details */
#include "ucptable.cpp" /* The table itself */
+namespace v8 { namespace jscre {
+
/*************************************************
* Search table and return other case *
*************************************************/
@@ -96,3 +98,5 @@
offset |= f1_caseneg;
return !offset ? -1 : c + offset;
}
+
+} } // namespace v8::jscre
Modified: branches/bleeding_edge/src/third_party/jscre/pcre_xclass.cpp
==============================================================================
--- branches/bleeding_edge/src/third_party/jscre/pcre_xclass.cpp
(original)
+++ branches/bleeding_edge/src/third_party/jscre/pcre_xclass.cpp Wed Nov
26
14:45:21 2008
@@ -42,6 +42,8 @@
#include "pcre_internal.h"
+namespace v8 { namespace jscre {
+
/*************************************************
* Match character against an XCLASS *
*************************************************/
@@ -112,3 +114,5 @@
return negated; /* char did not match */
}
+
+} } // namespace v8::jscre
--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---