
This functionality was added about three years ago, but has been in a significantly broken state since it was added. It has begun to cause a maintenance burden for work in Clang (largely due to the complexity of having two levels of code generation involved), and the original author is unable to help maintain it. Because it only worked under limited circumstances and because of the maintenance burden, it is being removed. If someone wishes to resurrect the functionality, they should hopefully be able to do so from this one commit. Fixes #82591
49 lines
1.3 KiB
C++
49 lines
1.3 KiB
C++
//===--- QuerySession.h - clang-query ---------------------------*- 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
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_QUERY_QUERY_SESSION_H
|
|
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_QUERY_QUERY_SESSION_H
|
|
|
|
#include "clang/AST/ASTTypeTraits.h"
|
|
#include "clang/ASTMatchers/Dynamic/VariantValue.h"
|
|
#include "llvm/ADT/ArrayRef.h"
|
|
#include "llvm/ADT/StringMap.h"
|
|
|
|
namespace clang {
|
|
|
|
class ASTUnit;
|
|
|
|
namespace query {
|
|
|
|
/// Represents the state for a particular clang-query session.
|
|
class QuerySession {
|
|
public:
|
|
QuerySession(llvm::ArrayRef<std::unique_ptr<ASTUnit>> ASTs)
|
|
: ASTs(ASTs), PrintOutput(false), DiagOutput(true),
|
|
DetailedASTOutput(false), BindRoot(true), PrintMatcher(false),
|
|
Terminate(false), TK(TK_AsIs) {}
|
|
|
|
llvm::ArrayRef<std::unique_ptr<ASTUnit>> ASTs;
|
|
|
|
bool PrintOutput;
|
|
bool DiagOutput;
|
|
bool DetailedASTOutput;
|
|
|
|
bool BindRoot;
|
|
bool PrintMatcher;
|
|
bool Terminate;
|
|
|
|
TraversalKind TK;
|
|
llvm::StringMap<ast_matchers::dynamic::VariantValue> NamedValues;
|
|
};
|
|
|
|
} // namespace query
|
|
} // namespace clang
|
|
|
|
#endif
|