Index: src/jsregexp.cc |
diff --git a/src/jsregexp.cc b/src/jsregexp.cc |
index f32ab135def56d96777484cb0d454ca1943a6db0..7838c04a9e2f049e7ecc046813c305fe6342d9d6 100644 |
--- a/src/jsregexp.cc |
+++ b/src/jsregexp.cc |
@@ -950,10 +950,10 @@ TextElement TextElement::CharClass( |
int TextElement::length() { |
- if (type == ATOM) { |
+ if (text_type == ATOM) { |
return data.u_atom->length(); |
} else { |
- ASSERT(type == CHAR_CLASS); |
+ ASSERT(text_type == CHAR_CLASS); |
return 1; |
} |
} |
@@ -1165,7 +1165,7 @@ RegExpEngine::CompilationResult RegExpCompiler::Assemble( |
bool Trace::DeferredAction::Mentions(int that) { |
- if (type() == ActionNode::CLEAR_CAPTURES) { |
+ if (action_type() == ActionNode::CLEAR_CAPTURES) { |
Interval range = static_cast<DeferredClearCaptures*>(this)->range(); |
return range.Contains(that); |
} else { |
@@ -1191,7 +1191,7 @@ bool Trace::GetStoredPosition(int reg, int* cp_offset) { |
action != NULL; |
action = action->next()) { |
if (action->Mentions(reg)) { |
- if (action->type() == ActionNode::STORE_POSITION) { |
+ if (action->action_type() == ActionNode::STORE_POSITION) { |
*cp_offset = static_cast<DeferredCapture*>(action)->cp_offset(); |
return true; |
} else { |
@@ -1209,7 +1209,7 @@ int Trace::FindAffectedRegisters(OutSet* affected_registers, |
for (DeferredAction* action = actions_; |
action != NULL; |
action = action->next()) { |
- if (action->type() == ActionNode::CLEAR_CAPTURES) { |
+ if (action->action_type() == ActionNode::CLEAR_CAPTURES) { |
Interval range = static_cast<DeferredClearCaptures*>(action)->range(); |
for (int i = range.from(); i <= range.to(); i++) |
affected_registers->Set(i, zone); |
@@ -1273,7 +1273,7 @@ void Trace::PerformDeferredActions(RegExpMacroAssembler* assembler, |
action != NULL; |
action = action->next()) { |
if (action->Mentions(reg)) { |
- switch (action->type()) { |
+ switch (action->action_type()) { |
case ActionNode::SET_REGISTER: { |
Trace::DeferredSetRegister* psr = |
static_cast<Trace::DeferredSetRegister*>(action); |
@@ -2304,7 +2304,7 @@ int ActionNode::EatsAtLeast(int still_to_find, |
int budget, |
bool not_at_start) { |
if (budget <= 0) return 0; |
- if (type_ == POSITIVE_SUBMATCH_SUCCESS) return 0; // Rewinds input! |
+ if (action_type_ == POSITIVE_SUBMATCH_SUCCESS) return 0; // Rewinds input! |
return on_success()->EatsAtLeast(still_to_find, |
budget - 1, |
not_at_start); |
@@ -2315,9 +2315,9 @@ void ActionNode::FillInBMInfo(int offset, |
int budget, |
BoyerMooreLookahead* bm, |
bool not_at_start) { |
- if (type_ == BEGIN_SUBMATCH) { |
+ if (action_type_ == BEGIN_SUBMATCH) { |
bm->SetRest(offset); |
- } else if (type_ != POSITIVE_SUBMATCH_SUCCESS) { |
+ } else if (action_type_ != POSITIVE_SUBMATCH_SUCCESS) { |
on_success()->FillInBMInfo(offset, budget - 1, bm, not_at_start); |
} |
SaveBMInfo(bm, not_at_start, offset); |
@@ -2333,7 +2333,7 @@ int AssertionNode::EatsAtLeast(int still_to_find, |
// implies false. So lets just return the max answer (still_to_find) since |
// that won't prevent us from preloading a lot of characters for the other |
// branches in the node graph. |
- if (type() == AT_START && not_at_start) return still_to_find; |
+ if (assertion_type() == AT_START && not_at_start) return still_to_find; |
return on_success()->EatsAtLeast(still_to_find, |
budget - 1, |
not_at_start); |
@@ -2345,7 +2345,7 @@ void AssertionNode::FillInBMInfo(int offset, |
BoyerMooreLookahead* bm, |
bool not_at_start) { |
// Match the behaviour of EatsAtLeast on this node. |
- if (type() == AT_START && not_at_start) return; |
+ if (assertion_type() == AT_START && not_at_start) return; |
on_success()->FillInBMInfo(offset, budget - 1, bm, not_at_start); |
SaveBMInfo(bm, not_at_start, offset); |
} |
@@ -2562,7 +2562,7 @@ void TextNode::GetQuickCheckDetails(QuickCheckDetails* details, |
} |
for (int k = 0; k < elms_->length(); k++) { |
TextElement elm = elms_->at(k); |
- if (elm.type == TextElement::ATOM) { |
+ if (elm.text_type == TextElement::ATOM) { |
Vector<const uc16> quarks = elm.data.u_atom->data(); |
for (int i = 0; i < characters && i < quarks.length(); i++) { |
QuickCheckDetails::Position* pos = |
@@ -2815,7 +2815,7 @@ RegExpNode* TextNode::FilterASCII(int depth, bool ignore_case) { |
int element_count = elms_->length(); |
for (int i = 0; i < element_count; i++) { |
TextElement elm = elms_->at(i); |
- if (elm.type == TextElement::ATOM) { |
+ if (elm.text_type == TextElement::ATOM) { |
Vector<const uc16> quarks = elm.data.u_atom->data(); |
for (int j = 0; j < quarks.length(); j++) { |
uint16_t c = quarks[j]; |
@@ -2831,7 +2831,7 @@ RegExpNode* TextNode::FilterASCII(int depth, bool ignore_case) { |
copy[j] = converted; |
} |
} else { |
- ASSERT(elm.type == TextElement::CHAR_CLASS); |
+ ASSERT(elm.text_type == TextElement::CHAR_CLASS); |
RegExpCharacterClass* cc = elm.data.u_char_class; |
ZoneList<CharacterRange>* ranges = cc->ranges(zone()); |
if (!CharacterRange::IsCanonical(ranges)) { |
@@ -3086,7 +3086,7 @@ void AssertionNode::EmitBoundaryCheck(RegExpCompiler* compiler, Trace* trace) { |
if (lookahead->at(0)->is_non_word()) next_is_word_character = Trace::FALSE; |
if (lookahead->at(0)->is_word()) next_is_word_character = Trace::TRUE; |
} |
- bool at_boundary = (type_ == AssertionNode::AT_BOUNDARY); |
+ bool at_boundary = (assertion_type_ == AssertionNode::AT_BOUNDARY); |
if (next_is_word_character == Trace::UNKNOWN) { |
Label before_non_word; |
Label before_word; |
@@ -3149,7 +3149,7 @@ void AssertionNode::GetQuickCheckDetails(QuickCheckDetails* details, |
RegExpCompiler* compiler, |
int filled_in, |
bool not_at_start) { |
- if (type_ == AT_START && not_at_start) { |
+ if (assertion_type_ == AT_START && not_at_start) { |
details->set_cannot_match(); |
return; |
} |
@@ -3162,7 +3162,7 @@ void AssertionNode::GetQuickCheckDetails(QuickCheckDetails* details, |
void AssertionNode::Emit(RegExpCompiler* compiler, Trace* trace) { |
RegExpMacroAssembler* assembler = compiler->macro_assembler(); |
- switch (type_) { |
+ switch (assertion_type_) { |
case AT_END: { |
Label ok; |
assembler->CheckPosition(trace->cp_offset(), &ok); |
@@ -3255,7 +3255,7 @@ void TextNode::TextEmitPass(RegExpCompiler* compiler, |
for (int i = preloaded ? 0 : element_count - 1; i >= 0; i--) { |
TextElement elm = elms_->at(i); |
int cp_offset = trace->cp_offset() + elm.cp_offset; |
- if (elm.type == TextElement::ATOM) { |
+ if (elm.text_type == TextElement::ATOM) { |
Vector<const uc16> quarks = elm.data.u_atom->data(); |
for (int j = preloaded ? 0 : quarks.length() - 1; j >= 0; j--) { |
if (first_element_checked && i == 0 && j == 0) continue; |
@@ -3293,7 +3293,7 @@ void TextNode::TextEmitPass(RegExpCompiler* compiler, |
} |
} |
} else { |
- ASSERT_EQ(elm.type, TextElement::CHAR_CLASS); |
+ ASSERT_EQ(elm.text_type, TextElement::CHAR_CLASS); |
if (pass == CHARACTER_CLASS_MATCH) { |
if (first_element_checked && i == 0) continue; |
if (DeterminedAlready(quick_check, elm.cp_offset)) continue; |
@@ -3316,7 +3316,7 @@ void TextNode::TextEmitPass(RegExpCompiler* compiler, |
int TextNode::Length() { |
TextElement elm = elms_->last(); |
ASSERT(elm.cp_offset >= 0); |
- if (elm.type == TextElement::ATOM) { |
+ if (elm.text_type == TextElement::ATOM) { |
return elm.cp_offset + elm.data.u_atom->data().length(); |
} else { |
return elm.cp_offset + 1; |
@@ -3422,7 +3422,7 @@ void TextNode::MakeCaseIndependent(bool is_ascii) { |
int element_count = elms_->length(); |
for (int i = 0; i < element_count; i++) { |
TextElement elm = elms_->at(i); |
- if (elm.type == TextElement::CHAR_CLASS) { |
+ if (elm.text_type == TextElement::CHAR_CLASS) { |
RegExpCharacterClass* cc = elm.data.u_char_class; |
// None of the standard character classes is different in the case |
// independent case and it slows us down if we don't know that. |
@@ -3439,7 +3439,7 @@ void TextNode::MakeCaseIndependent(bool is_ascii) { |
int TextNode::GreedyLoopTextLength() { |
TextElement elm = elms_->at(elms_->length() - 1); |
- if (elm.type == TextElement::CHAR_CLASS) { |
+ if (elm.text_type == TextElement::CHAR_CLASS) { |
return elm.cp_offset + 1; |
} else { |
return elm.cp_offset + elm.data.u_atom->data().length(); |
@@ -3451,7 +3451,7 @@ RegExpNode* TextNode::GetSuccessorOfOmnivorousTextNode( |
RegExpCompiler* compiler) { |
if (elms_->length() != 1) return NULL; |
TextElement elm = elms_->at(0); |
- if (elm.type != TextElement::CHAR_CLASS) return NULL; |
+ if (elm.text_type != TextElement::CHAR_CLASS) return NULL; |
RegExpCharacterClass* node = elm.data.u_char_class; |
ZoneList<CharacterRange>* ranges = node->ranges(zone()); |
if (!CharacterRange::IsCanonical(ranges)) { |
@@ -4196,7 +4196,7 @@ void ActionNode::Emit(RegExpCompiler* compiler, Trace* trace) { |
RecursionCheck rc(compiler); |
- switch (type_) { |
+ switch (action_type_) { |
case STORE_POSITION: { |
Trace::DeferredCapture |
new_capture(data_.u_position_register.reg, |
@@ -4526,7 +4526,7 @@ void DotPrinter::VisitText(TextNode* that) { |
for (int i = 0; i < that->elements()->length(); i++) { |
if (i > 0) stream()->Add(" "); |
TextElement elm = that->elements()->at(i); |
- switch (elm.type) { |
+ switch (elm.text_type) { |
case TextElement::ATOM: { |
stream()->Add("'%w'", elm.data.u_atom->data()); |
break; |
@@ -4573,7 +4573,7 @@ void DotPrinter::VisitEnd(EndNode* that) { |
void DotPrinter::VisitAssertion(AssertionNode* that) { |
stream()->Add(" n%p [", that); |
- switch (that->type()) { |
+ switch (that->assertion_type()) { |
case AssertionNode::AT_END: |
stream()->Add("label=\"$\", shape=septagon"); |
break; |
@@ -4600,7 +4600,7 @@ void DotPrinter::VisitAssertion(AssertionNode* that) { |
void DotPrinter::VisitAction(ActionNode* that) { |
stream()->Add(" n%p [", that); |
- switch (that->type_) { |
+ switch (that->action_type_) { |
case ActionNode::SET_REGISTER: |
stream()->Add("label=\"$%i:=%i\", shape=octagon", |
that->data_.u_store_register.reg, |
@@ -5013,7 +5013,7 @@ RegExpNode* RegExpAssertion::ToNode(RegExpCompiler* compiler, |
NodeInfo info; |
Zone* zone = compiler->zone(); |
- switch (type()) { |
+ switch (assertion_type()) { |
case START_OF_LINE: |
return AssertionNode::AfterNewline(on_success); |
case START_OF_INPUT: |
@@ -5715,7 +5715,7 @@ void TextNode::CalculateOffsets() { |
for (int i = 0; i < element_count; i++) { |
TextElement& elm = elements()->at(i); |
elm.cp_offset = cp_offset; |
- if (elm.type == TextElement::ATOM) { |
+ if (elm.text_type == TextElement::ATOM) { |
cp_offset += elm.data.u_atom->data().length(); |
} else { |
cp_offset++; |
@@ -5835,7 +5835,7 @@ void TextNode::FillInBMInfo(int initial_offset, |
return; |
} |
TextElement text = elements()->at(i); |
- if (text.type == TextElement::ATOM) { |
+ if (text.text_type == TextElement::ATOM) { |
RegExpAtom* atom = text.data.u_atom; |
for (int j = 0; j < atom->length(); j++, offset++) { |
if (offset >= bm->length()) { |
@@ -5858,7 +5858,7 @@ void TextNode::FillInBMInfo(int initial_offset, |
} |
} |
} else { |
- ASSERT(text.type == TextElement::CHAR_CLASS); |
+ ASSERT(text.text_type == TextElement::CHAR_CLASS); |
RegExpCharacterClass* char_class = text.data.u_char_class; |
ZoneList<CharacterRange>* ranges = char_class->ranges(zone()); |
if (char_class->is_negated()) { |
@@ -5971,7 +5971,7 @@ void DispatchTableConstructor::AddInverse(ZoneList<CharacterRange>* ranges) { |
void DispatchTableConstructor::VisitText(TextNode* that) { |
TextElement elm = that->elements()->at(0); |
- switch (elm.type) { |
+ switch (elm.text_type) { |
case TextElement::ATOM: { |
uc16 c = elm.data.u_atom->data()[0]; |
AddRange(CharacterRange(c, c)); |