//===--- FormatTokenSource.h - Format C++ code ------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /// /// \file /// This file defines the \c FormatTokenSource interface, which provides a token /// stream as well as the ability to manipulate the token stream. /// //===----------------------------------------------------------------------===// #ifndef LLVM_CLANG_LIB_FORMAT_FORMATTOKENSOURCE_H #define LLVM_CLANG_LIB_FORMAT_FORMATTOKENSOURCE_H #include "UnwrappedLineParser.h" #define DEBUG_TYPE … namespace clang { namespace format { // Navigate a token stream. // // Enables traversal of a token stream, resetting the position in a token // stream, as well as inserting new tokens. class FormatTokenSource { … }; class IndexedTokenSource : public FormatTokenSource { … }; class ScopedMacroState : public FormatTokenSource { … }; } // namespace format } // namespace clang #undef DEBUG_TYPE #endif