101fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org// 201fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org// Copyright (c) 2012 The ANGLE Project Authors. All rights reserved. 301fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org// Use of this source code is governed by a BSD-style license that can be 401fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org// found in the LICENSE file. 501fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org// 601fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 701fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org#ifndef COMPILER_PREPROCESSOR_LEXER_H_ 801fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org#define COMPILER_PREPROCESSOR_LEXER_H_ 901fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 1001fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.orgnamespace pp 1101fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org{ 1201fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 13d089d11864ccba3a6730085c1099ad7edef1180calokp@chromium.orgstruct Token; 1401fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 1501fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.orgclass Lexer 1601fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org{ 1701fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org public: 18964b7194a38a2b04e2b483dc5a8c12426b1a202falokp@chromium.org virtual ~Lexer(); 19964b7194a38a2b04e2b483dc5a8c12426b1a202falokp@chromium.org 20d526f9895c0aa867adb74a78e53832a9240c6ad6Zhenyao Mo virtual void lex(Token *token) = 0; 2101fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org}; 2201fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 2301fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org} // namespace pp 244b2a522a3103768fa244d07644f3e201bd30ff9dalokp@chromium.org#endif // COMPILER_PREPROCESSOR_LEXER_H_ 2501fd431caedd5914014bc0945330bd130c1c8895alokp@chromium.org 26