35 #include <clang/AST/RecursiveASTVisitor.h>
36 #include <llvm/ADT/SmallVector.h>
41 class AutomatonDescription;
45 class TeslaVisitor :
public clang::RecursiveASTVisitor<TeslaVisitor> {
47 TeslaVisitor(llvm::StringRef Filename, clang::ASTContext *Context);
55 const llvm::ArrayRef<AutomatonDescription*>
GetAutomata()
const {
64 const llvm::StringRef Filename;
65 clang::ASTContext *Context;
67 llvm::SmallVector<AutomatonDescription*, 2> Automata;
68 llvm::SmallVector<const Usage*, 2> Roots;