Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Side by Side Diff: test/cctest/test-regexp.cc

Issue 10944: Restructure analysis (Closed)
Patch Set: Created 12 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/string-stream.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 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 660 matching lines...) Expand 10 before | Expand all | Expand 10 after
671 ZoneScope zone_scope(DELETE_ON_EXIT); 671 ZoneScope zone_scope(DELETE_ON_EXIT);
672 ZoneList<CharacterRange>* ranges = 672 ZoneList<CharacterRange>* ranges =
673 new ZoneList<CharacterRange>(kRangeCount); 673 new ZoneList<CharacterRange>(kRangeCount);
674 for (int i = 0; i < kRangeCount; i++) { 674 for (int i = 0; i < kRangeCount; i++) {
675 int from = PseudoRandom(t + 87, i + 25) % kLimit; 675 int from = PseudoRandom(t + 87, i + 25) % kLimit;
676 int to = from + (PseudoRandom(i + 87, t + 25) % (kLimit / 20)); 676 int to = from + (PseudoRandom(i + 87, t + 25) % (kLimit / 20));
677 if (to > kLimit) to = kLimit; 677 if (to > kLimit) to = kLimit;
678 ranges->Add(CharacterRange(from, to)); 678 ranges->Add(CharacterRange(from, to));
679 } 679 }
680 DispatchTable table; 680 DispatchTable table;
681 CharacterClassNode::AddInverseToTable(ranges, &table, 0); 681 DispatchTableConstructor cons(&table);
682 cons.set_choice_index(0);
683 cons.AddInverse(ranges);
682 for (int i = 0; i < kLimit; i++) { 684 for (int i = 0; i < kLimit; i++) {
683 bool is_on = false; 685 bool is_on = false;
684 for (int j = 0; !is_on && j < kRangeCount; j++) 686 for (int j = 0; !is_on && j < kRangeCount; j++)
685 is_on = ranges->at(j).Contains(i); 687 is_on = ranges->at(j).Contains(i);
686 OutSet* set = table.Get(i); 688 OutSet* set = table.Get(i);
687 CHECK_EQ(is_on, set->Get(0) == false); 689 CHECK_EQ(is_on, set->Get(0) == false);
688 } 690 }
689 } 691 }
690 ZoneScope zone_scope(DELETE_ON_EXIT); 692 ZoneScope zone_scope(DELETE_ON_EXIT);
691 ZoneList<CharacterRange>* ranges = 693 ZoneList<CharacterRange>* ranges =
692 new ZoneList<CharacterRange>(1); 694 new ZoneList<CharacterRange>(1);
693 ranges->Add(CharacterRange(0xFFF0, 0xFFFE)); 695 ranges->Add(CharacterRange(0xFFF0, 0xFFFE));
694 DispatchTable table; 696 DispatchTable table;
695 CharacterClassNode::AddInverseToTable(ranges, &table, 0); 697 DispatchTableConstructor cons(&table);
698 cons.set_choice_index(0);
699 cons.AddInverse(ranges);
696 CHECK(!table.Get(0xFFFE)->Get(0)); 700 CHECK(!table.Get(0xFFFE)->Get(0));
697 CHECK(table.Get(0xFFFF)->Get(0)); 701 CHECK(table.Get(0xFFFF)->Get(0));
698 } 702 }
699 703
700 704
701 TEST(Graph) { 705 TEST(Graph) {
702 Execute("a|(b|c)|d", "", true); 706 Execute("a|(b|c)|d", "", true);
703 } 707 }
OLDNEW
« no previous file with comments | « src/string-stream.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698