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