clang  16.0.0git
Classes | Namespaces | Typedefs
MatchSwitch.h File Reference
#include "clang/AST/ASTContext.h"
#include "clang/AST/Stmt.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/Analysis/FlowSensitive/DataflowEnvironment.h"
#include "llvm/ADT/StringRef.h"
#include <functional>
#include <string>
#include <type_traits>
#include <utility>
#include <vector>
Include dependency graph for MatchSwitch.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


struct  clang::dataflow::TransferState< LatticeT >
 A common form of state shared between the cases of a transfer function. More...
class  clang::dataflow::ASTMatchSwitchBuilder< BaseT, State, Result >
 Collects cases of a "match switch": a collection of matchers paired with callbacks, which together define a switch that can be applied to a node whose type derives from BaseT. More...


 Dataflow Directional Tag Classes.


template<typename T >
using clang::dataflow::MatchSwitchMatcher = ast_matchers::internal::Matcher< T >
template<typename T , typename State , typename Result = void>
using clang::dataflow::MatchSwitchAction = std::function< Result(const T *, const ast_matchers::MatchFinder::MatchResult &, State &)>
template<typename BaseT , typename State , typename Result = void>
using clang::dataflow::ASTMatchSwitch = std::function< Result(const BaseT &, ASTContext &, State &)>
template<typename State , typename Result = void>
using clang::dataflow::MatchSwitch = ASTMatchSwitch< Stmt, State, Result >
template<typename State , typename Result = void>
using clang::dataflow::MatchSwitchBuilder = ASTMatchSwitchBuilder< Stmt, State, Result >