Ignore:
Timestamp:
Jul 8, 2010, 3:07:50 PM (15 years ago)
Author:
[email protected]
Message:

Tidy up the lexer

Reviewed by Anders Carlson.

Remove some of the old yacc/lex-isms still present in the lexer

  • parser/JSParser.h:

(JSC::):

  • parser/Lexer.cpp:

(JSC::Lexer::parseString):
(JSC::Lexer::lex):

  • parser/Lexer.h:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/parser/Lexer.cpp

    r62848 r62849  
    388388}
    389389
    390 ALWAYS_INLINE bool Lexer::parseString(void* lvalp)
     390ALWAYS_INLINE bool Lexer::parseString(JSTokenData* lvalp)
    391391{
    392392    int stringQuoteCharacter = m_current;
     
    461461    if (currentCharacter() != stringStart)
    462462        m_buffer16.append(stringStart, currentCharacter() - stringStart);
    463     reinterpret_cast<YYSTYPE*>(lvalp)->ident = makeIdentifier(m_buffer16.data(), m_buffer16.size());
     463    lvalp->ident = makeIdentifier(m_buffer16.data(), m_buffer16.size());
    464464    m_buffer16.resize(0);
    465465    return true;
    466466}
    467467
    468 int Lexer::lex(void* p1, void* p2)
     468int Lexer::lex(JSTokenData* lvalp, JSTokenInfo* llocp)
    469469{
    470470    ASSERT(!m_error);
     
    472472    ASSERT(m_buffer16.isEmpty());
    473473
    474     YYSTYPE* lvalp = static_cast<YYSTYPE*>(p1);
    475     YYLTYPE* llocp = static_cast<YYLTYPE*>(p2);
    476474    int token = 0;
    477475    m_terminator = false;
Note: See TracChangeset for help on using the changeset viewer.