1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* 3 * This file is part of the LibreOffice project. 4 * 5 * Based on LLVM/Clang. 6 * 7 * This file is distributed under the University of Illinois Open Source 8 * License. See LICENSE.TXT for details. 9 * 10 */ 11 12 #ifndef CASCADINGCONDOP_H 13 #define CASCADINGCONDOP_H 14 15 #include "plugin.hxx" 16 17 namespace loplugin 18 { 19 20 struct WalkCounter; 21 22 // The class implementing the plugin action. 23 class CascadingAssignOp 24 // Inherits from the Clang class that will allow examining the Clang AST tree (i.e. syntax tree). 25 : public FilteringPlugin< CascadingAssignOp > 26 { 27 public: 28 CascadingAssignOp( const InstantiationData& data ); 29 virtual void run() override; 30 void Walk( const Stmt* stmt, WalkCounter& c ); 31 bool VisitStmt( const Stmt* stmt ); 32 }; 33 34 } // namespace loplugin 35 36 #endif // CASCADINGCONDOP_H 37 38 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 39