| OLD | NEW | 
|---|
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without | 
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are | 
| 4 // met: | 4 // met: | 
| 5 // | 5 // | 
| 6 //     * Redistributions of source code must retain the above copyright | 6 //     * Redistributions of source code must retain the above copyright | 
| 7 //       notice, this list of conditions and the following disclaimer. | 7 //       notice, this list of conditions and the following disclaimer. | 
| 8 //     * Redistributions in binary form must reproduce the above | 8 //     * Redistributions in binary form must reproduce the above | 
| 9 //       copyright notice, this list of conditions and the following | 9 //       copyright notice, this list of conditions and the following | 
| 10 //       disclaimer in the documentation and/or other materials provided | 10 //       disclaimer in the documentation and/or other materials provided | 
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 118   Handle<Object> result; | 118   Handle<Object> result; | 
| 119   if (in_cache) { | 119   if (in_cache) { | 
| 120     re->set_data(*cached); | 120     re->set_data(*cached); | 
| 121     return re; | 121     return re; | 
| 122   } | 122   } | 
| 123   FlattenString(pattern); | 123   FlattenString(pattern); | 
| 124   CompilationZoneScope zone_scope(DELETE_ON_EXIT); | 124   CompilationZoneScope zone_scope(DELETE_ON_EXIT); | 
| 125   PostponeInterruptsScope postpone; | 125   PostponeInterruptsScope postpone; | 
| 126   RegExpCompileData parse_result; | 126   RegExpCompileData parse_result; | 
| 127   FlatStringReader reader(pattern); | 127   FlatStringReader reader(pattern); | 
| 128   if (!ParseRegExp(&reader, flags.is_multiline(), &parse_result)) { | 128   if (!Parser::ParseRegExp(&reader, flags.is_multiline(), &parse_result)) { | 
| 129     // Throw an exception if we fail to parse the pattern. | 129     // Throw an exception if we fail to parse the pattern. | 
| 130     ThrowRegExpException(re, | 130     ThrowRegExpException(re, | 
| 131                          pattern, | 131                          pattern, | 
| 132                          parse_result.error, | 132                          parse_result.error, | 
| 133                          "malformed_regexp"); | 133                          "malformed_regexp"); | 
| 134     return Handle<Object>::null(); | 134     return Handle<Object>::null(); | 
| 135   } | 135   } | 
| 136 | 136 | 
| 137   if (parse_result.simple && !flags.is_ignore_case()) { | 137   if (parse_result.simple && !flags.is_ignore_case()) { | 
| 138     // Parse-tree is a single atom that is equal to the pattern. | 138     // Parse-tree is a single atom that is equal to the pattern. | 
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 260 | 260 | 
| 261   JSRegExp::Flags flags = re->GetFlags(); | 261   JSRegExp::Flags flags = re->GetFlags(); | 
| 262 | 262 | 
| 263   Handle<String> pattern(re->Pattern()); | 263   Handle<String> pattern(re->Pattern()); | 
| 264   if (!pattern->IsFlat()) { | 264   if (!pattern->IsFlat()) { | 
| 265     FlattenString(pattern); | 265     FlattenString(pattern); | 
| 266   } | 266   } | 
| 267 | 267 | 
| 268   RegExpCompileData compile_data; | 268   RegExpCompileData compile_data; | 
| 269   FlatStringReader reader(pattern); | 269   FlatStringReader reader(pattern); | 
| 270   if (!ParseRegExp(&reader, flags.is_multiline(), &compile_data)) { | 270   if (!Parser::ParseRegExp(&reader, flags.is_multiline(), &compile_data)) { | 
| 271     // Throw an exception if we fail to parse the pattern. | 271     // Throw an exception if we fail to parse the pattern. | 
| 272     // THIS SHOULD NOT HAPPEN. We already pre-parsed it successfully once. | 272     // THIS SHOULD NOT HAPPEN. We already pre-parsed it successfully once. | 
| 273     ThrowRegExpException(re, | 273     ThrowRegExpException(re, | 
| 274                          pattern, | 274                          pattern, | 
| 275                          compile_data.error, | 275                          compile_data.error, | 
| 276                          "malformed_regexp"); | 276                          "malformed_regexp"); | 
| 277     return false; | 277     return false; | 
| 278   } | 278   } | 
| 279   RegExpEngine::CompilationResult result = | 279   RegExpEngine::CompilationResult result = | 
| 280       RegExpEngine::Compile(&compile_data, | 280       RegExpEngine::Compile(&compile_data, | 
| (...skipping 4959 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 5240                            node, | 5240                            node, | 
| 5241                            data->capture_count, | 5241                            data->capture_count, | 
| 5242                            pattern); | 5242                            pattern); | 
| 5243 } | 5243 } | 
| 5244 | 5244 | 
| 5245 | 5245 | 
| 5246 int OffsetsVector::static_offsets_vector_[ | 5246 int OffsetsVector::static_offsets_vector_[ | 
| 5247     OffsetsVector::kStaticOffsetsVectorSize]; | 5247     OffsetsVector::kStaticOffsetsVectorSize]; | 
| 5248 | 5248 | 
| 5249 }}  // namespace v8::internal | 5249 }}  // namespace v8::internal | 
| OLD | NEW | 
|---|