tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

NonStdMoveChecker.h (812B)


      1 /* This Source Code Form is subject to the terms of the Mozilla Public
      2 * License, v. 2.0. If a copy of the MPL was not distributed with this
      3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      4 
      5 #ifndef NonStdMoveChecker_h__
      6 #define NonStdMoveChecker_h__
      7 
      8 #include "plugin.h"
      9 
     10 class NonStdMoveChecker final : public BaseCheck {
     11 public:
     12  NonStdMoveChecker(StringRef CheckName, ContextType *Context = nullptr)
     13      : BaseCheck(CheckName, Context) {}
     14  void registerMatchers(MatchFinder *AstMatcher) override;
     15  void check(const MatchFinder::MatchResult &Result) override;
     16 
     17 private:
     18  CompilerInstance *CI;
     19 
     20  static
     21 #if CLANG_VERSION_FULL >= 1600
     22  std::optional<FixItHint>
     23 #else
     24  Optional<FixItHint>
     25 #endif
     26  makeFixItHint(const MatchFinder::MatchResult &Result, const Expr *TargetExpr);
     27 };
     28 
     29 #endif