Lines Matching defs:zone

10 #include "src/zone/zone-list-inl.h"
36 compiler->zone()->New<ZoneList<TextElement>>(1, compiler->zone());
37 elms->Add(TextElement::Atom(this), compiler->zone());
38 return compiler->zone()->New<TextNode>(elms, compiler->read_backward(),
44 return compiler->zone()->New<TextNode>(elements(), compiler->read_backward(),
96 bool RegExpCharacterClass::is_standard(Zone* zone) {
105 if (CompareRanges(set_.ranges(zone), kSpaceRanges, kSpaceRangeCount)) {
109 if (CompareInverseRanges(set_.ranges(zone), kSpaceRanges, kSpaceRangeCount)) {
113 if (CompareInverseRanges(set_.ranges(zone), kLineTerminatorRanges,
118 if (CompareRanges(set_.ranges(zone), kLineTerminatorRanges,
123 if (CompareRanges(set_.ranges(zone), kWordRanges, kWordRangeCount)) {
127 if (CompareInverseRanges(set_.ranges(zone), kWordRanges, kWordRangeCount)) {
194 const UnicodeRangeSplitter::CharacterRangeVector* v, Zone* zone) {
198 zone->New<ZoneList<CharacterRange>>(static_cast<int>(v->size()), zone);
200 result->Add(v->at(i), zone);
210 ToCanonicalZoneList(splitter->bmp(), compiler->zone());
213 compiler->zone(), bmp, compiler->read_backward(), on_success)));
231 Zone* const zone = compiler->zone();
233 ToCanonicalZoneList(splitter->non_bmp(), zone);
250 zone);
252 zone->New<ZoneList<CharacterRange>>(1, zone);
259 CharacterRange::Range(from_l, to_l), zone);
263 zone->New<ZoneList<CharacterRange>>(2, zone);
266 zone);
310 zone, leading_with_full_trailing_range,
320 zone, leading_range, trailing_ranges, compiler->read_backward(),
329 Zone* zone = compiler->zone();
331 zone, match, read_backward, on_success);
337 zone, lookbehind, !read_backward, lookaround.on_match_success());
345 Zone* zone = compiler->zone();
351 zone, lookahead, read_backward, lookaround.on_match_success());
353 zone, match, read_backward, lookaround.ForMatch(negative_match));
360 ToCanonicalZoneList(splitter->lead_surrogates(), compiler->zone());
362 Zone* zone = compiler->zone();
365 zone, CharacterRange::Range(kTrailSurrogateStart, kTrailSurrogateEnd));
386 ToCanonicalZoneList(splitter->trail_surrogates(), compiler->zone());
388 Zone* zone = compiler->zone();
391 zone, CharacterRange::Range(kLeadSurrogateStart, kLeadSurrogateEnd));
412 Zone* zone = compiler->zone();
418 CharacterRange::List(zone, CharacterRange::Range(0, kMaxUtf16CodeUnit));
419 return TextNode::CreateForCharacterRanges(zone, range, false, on_success);
422 void AddUnicodeCaseEquivalents(ZoneList<CharacterRange>* ranges, Zone* zone) {
448 zone);
460 Zone* const zone = compiler->zone();
461 ZoneList<CharacterRange>* ranges = this->ranges(zone);
464 AddUnicodeCaseEquivalents(ranges, zone);
469 return zone->New<TextNode>(this, compiler->read_backward(), on_success);
474 zone->New<ZoneList<CharacterRange>>(2, zone);
475 CharacterRange::Negate(ranges, negated, zone);
481 RegExpCharacterClass* fail = zone->New<RegExpCharacterClass>(zone, ranges);
482 return zone->New<TextNode>(fail, compiler->read_backward(), on_success);
495 ChoiceNode* result = zone->New<ChoiceNode>(2, zone);
655 Zone* zone = compiler->zone();
721 zone->New<RegExpAtom>(alt_atom->data().SubVector(0, prefix_length));
722 ZoneList<RegExpTree*>* pair = zone->New<ZoneList<RegExpTree*>>(2, zone);
723 pair->Add(prefix, zone);
725 zone->New<ZoneList<RegExpTree*>>(run_length, zone);
731 suffixes->Add(zone->New<RegExpEmpty>(), zone);
733 RegExpTree* suffix = zone->New<RegExpAtom>(
735 suffixes->Add(suffix, zone);
738 pair->Add(zone->New<RegExpDisjunction>(suffixes), zone);
739 alternatives->at(write_posn++) = zone->New<RegExpAlternative>(pair);
753 Zone* zone = compiler->zone();
796 zone->New<ZoneList<CharacterRange>>(2, zone);
800 ranges->Add(CharacterRange::Singleton(old_atom->data().at(0)), zone);
807 zone->New<RegExpCharacterClass>(zone, ranges, character_class_flags);
836 compiler->zone()->New<ChoiceNode>(length, compiler->zone());
858 Zone* zone = compiler->zone();
860 zone->New<ZoneList<CharacterRange>>(2, zone);
862 zone);
865 ChoiceNode* result = zone->New<ChoiceNode>(2, zone);
876 zone, word_range, true, lookbehind.on_match_success());
882 zone, word_range, false, lookahead.on_match_success());
892 Zone* zone = compiler->zone();
919 ChoiceNode* result = zone->New<ChoiceNode>(2, zone);
922 zone->New<ZoneList<CharacterRange>>(3, zone);
924 newline_ranges, false, zone);
925 RegExpCharacterClass* newline_atom = zone->New<RegExpCharacterClass>(
928 zone->New<TextNode>(newline_atom, false,
951 return compiler->zone()->New<BackReferenceNode>(
981 Zone* zone = on_success_->zone();
982 on_match_success_ = zone->New<NegativeSubmatchSuccess>(
984 capture_register_start, zone);
993 Zone* zone = on_success_->zone();
999 ChoiceNode* choice_node = zone->New<NegativeLookaroundChoiceNode>(
1000 GuardedAlternative(match), GuardedAlternative(on_success_), zone);
1051 static void MaybeRewrite(ZoneList<RegExpTree*>* terms, Zone* zone) {
1052 AssertionSequenceRewriter rewriter(terms, zone);
1122 AssertionSequenceRewriter(ZoneList<RegExpTree*>* terms, Zone* zone)
1123 : zone_(zone), terms_(terms) {}
1137 AssertionSequenceRewriter::MaybeRewrite(children, compiler->zone());
1155 Zone* zone) {
1160 ranges->Add(CharacterRange::Range(elmv[i], elmv[i + 1] - 1), zone);
1165 ZoneList<CharacterRange>* ranges, Zone* zone) {
1174 ranges->Add(CharacterRange::Range(last, elmv[i] - 1), zone);
1177 ranges->Add(CharacterRange::Range(last, kMaxCodePoint), zone);
1185 Zone* zone) {
1193 zone->New<ZoneList<CharacterRange>>(2, zone);
1194 AddClass(kWordRanges, kWordRangeCount, new_ranges, zone);
1195 AddUnicodeCaseEquivalents(new_ranges, zone);
1198 zone->New<ZoneList<CharacterRange>>(2, zone);
1199 CharacterRange::Negate(new_ranges, negated, zone);
1202 ranges->AddAll(*new_ranges, zone);
1208 AddClass(kSpaceRanges, kSpaceRangeCount, ranges, zone);
1211 AddClassNegated(kSpaceRanges, kSpaceRangeCount, ranges, zone);
1214 AddClass(kWordRanges, kWordRangeCount, ranges, zone);
1217 AddClassNegated(kWordRanges, kWordRangeCount, ranges, zone);
1220 AddClass(kDigitRanges, kDigitRangeCount, ranges, zone);
1223 AddClassNegated(kDigitRanges, kDigitRangeCount, ranges, zone);
1228 AddClass(kLineTerminatorRanges, kLineTerminatorRangeCount, ranges, zone);
1232 zone);
1238 ranges->Add(CharacterRange::Everything(), zone);
1244 void CharacterRange::AddCaseEquivalents(Isolate* isolate, Zone* zone,
1288 ranges->Add(CharacterRange::Singleton(from), zone);
1290 ranges->Add(CharacterRange::Range(from, to), zone);
1312 ranges->Add(CharacterRange::Singleton(chars[i]), zone);
1352 ranges->Add(CharacterRange::Range(range_from, range_to), zone);
1375 ZoneList<CharacterRange>* CharacterSet::ranges(Zone* zone) {
1377 ranges_ = zone->New<ZoneList<CharacterRange>>(2, zone);
1379 zone);
1505 Zone* zone) {
1517 negated_ranges->Add(CharacterRange::Range(from, range.from() - 1), zone);
1522 negated_ranges->Add(CharacterRange::Range(from, kMaxCodePoint), zone);
1619 Zone* zone = compiler->zone();
1650 ChoiceNode* alternation = zone->New<ChoiceNode>(2, zone);
1674 LoopChoiceNode* center = zone->New<LoopChoiceNode>(
1675 body->min_match() == 0, compiler->read_backward(), min, zone);
1699 Guard* body_guard = zone->New<Guard>(reg_ctr, Guard::LT, max);
1700 body_alt.AddGuard(body_guard, zone);
1704 Guard* rest_guard = compiler->zone()->New<Guard>(reg_ctr, Guard::GEQ, min);
1705 rest_alt.AddGuard(rest_guard, zone);