//===-- FrontendAction.h - Pluggable Frontend Action Interface --*- C++ -*-===//
//
//                     The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_CLANG_FRONTEND_PLUGINFRONTENDACTION_H
#define LLVM_CLANG_FRONTEND_PLUGINFRONTENDACTION_H

#include "clang/Frontend/FrontendAction.h"
#include "llvm/Support/Registry.h"

// Instantiated in FrontendAction.cpp.
extern template class llvm::Registry<clang::PluginASTAction>;

namespace clang {

/// The frontend plugin registry.
typedef llvm::Registry<PluginASTAction> FrontendPluginRegistry;

} // end namespace clang

#endif
