Handlers.h revision 77b4a79dd845fa93027f458049a7f71402006414
1//===--- Handlers.h - Interfaces for receiving information ------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// Abstract interfaces for receiving information. 11// 12//===----------------------------------------------------------------------===// 13 14#ifndef LLVM_CLANG_INDEX_HANDLERS_H 15#define LLVM_CLANG_INDEX_HANDLERS_H 16 17namespace clang { 18 19namespace idx { 20 class Entity; 21 class TranslationUnit; 22 23/// \brief Abstract interface for receiving Entities. 24class EntityHandler { 25public: 26 virtual ~EntityHandler(); 27 virtual void Handle(Entity Ent) = 0; 28}; 29 30/// \brief Abstract interface for receiving TranslationUnits. 31class TranslationUnitHandler { 32public: 33 virtual ~TranslationUnitHandler(); 34 virtual void Handle(TranslationUnit *TU) = 0; 35}; 36 37} // namespace idx 38 39} // namespace clang 40 41#endif 42