Ignore:
Timestamp:
Dec 29, 2014, 6:59:25 PM (10 years ago)
Author:
[email protected]
Message:

Move JavaScriptCore/yarr to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=139621

Reviewed by Anders Carlsson.

Final clean up OwnPtr|PassOwnPtr in JavaScriptCore/yarr.

  • yarr/YarrInterpreter.cpp:

(JSC::Yarr::ByteCompiler::atomParenthesesSubpatternEnd):

  • yarr/YarrInterpreter.h:

(JSC::Yarr::BytecodePattern::BytecodePattern):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::opCompileParenthesesSubpattern):
(JSC::Yarr::YarrGenerator::opCompileParentheticalAssertion):
(JSC::Yarr::YarrGenerator::opCompileBody):

  • yarr/YarrPattern.cpp:

(JSC::Yarr::CharacterClassConstructor::charClass):
(JSC::Yarr::YarrPatternConstructor::YarrPatternConstructor):
(JSC::Yarr::YarrPatternConstructor::reset):
(JSC::Yarr::YarrPatternConstructor::atomPatternCharacter):
(JSC::Yarr::YarrPatternConstructor::atomCharacterClassEnd):
(JSC::Yarr::YarrPatternConstructor::atomParenthesesSubpatternBegin):
(JSC::Yarr::YarrPatternConstructor::atomParentheticalAssertionBegin):
(JSC::Yarr::YarrPatternConstructor::copyDisjunction):
(JSC::Yarr::YarrPatternConstructor::checkForTerminalParentheses):
(JSC::Yarr::YarrPatternConstructor::optimizeDotStarWrappedExpressions):

  • yarr/YarrPattern.h:

(JSC::Yarr::PatternDisjunction::addNewAlternative):
(JSC::Yarr::YarrPattern::newlineCharacterClass):
(JSC::Yarr::YarrPattern::digitsCharacterClass):
(JSC::Yarr::YarrPattern::spacesCharacterClass):
(JSC::Yarr::YarrPattern::wordcharCharacterClass):
(JSC::Yarr::YarrPattern::nondigitsCharacterClass):
(JSC::Yarr::YarrPattern::nonspacesCharacterClass):
(JSC::Yarr::YarrPattern::nonwordcharCharacterClass):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/yarr/YarrInterpreter.cpp

    r176553 r177820  
    17131713
    17141714        unsigned numSubpatterns = lastSubpatternId - subpatternId + 1;
    1715         OwnPtr<ByteDisjunction> parenthesesDisjunction = adoptPtr(new ByteDisjunction(numSubpatterns, callFrameSize));
     1715        auto parenthesesDisjunction = std::make_unique<ByteDisjunction>(numSubpatterns, callFrameSize);
    17161716
    17171717        unsigned firstTermInParentheses = beginTerm + 1;
     
    17261726
    17271727        m_bodyDisjunction->terms.append(ByteTerm(ByteTerm::TypeParenthesesSubpattern, subpatternId, parenthesesDisjunction.get(), capture, inputPosition));
    1728         m_allParenthesesInfo.append(parenthesesDisjunction.release());
     1728        m_allParenthesesInfo.append(WTF::move(parenthesesDisjunction));
    17291729
    17301730        m_bodyDisjunction->terms[beginTerm].atom.quantityCount = quantityCount.unsafeGet();
     
    19241924    unsigned m_currentAlternativeIndex;
    19251925    Vector<ParenthesesStackEntry> m_parenthesesStack;
    1926     Vector<OwnPtr<ByteDisjunction>> m_allParenthesesInfo;
     1926    Vector<std::unique_ptr<ByteDisjunction>> m_allParenthesesInfo;
    19271927};
    19281928
Note: See TracChangeset for help on using the changeset viewer.