ASTConsumer.cpp revision bda0b626e74513950405c27525af87e214e605e2
1//===--- ASTConsumer.cpp - Abstract interface for reading ASTs --*- 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//  This file defines the ASTConsumer class.
11//
12//===----------------------------------------------------------------------===//
13
14#include "clang/AST/ASTConsumer.h"
15#include "clang/AST/Decl.h"
16using namespace clang;
17
18ASTConsumer::~ASTConsumer() {}
19
20void ASTConsumer::HandleTopLevelDeclaration(Decl* d) {
21  if (ScopedDecl* sd = dyn_cast<ScopedDecl>(d))
22    while (sd) {
23      HandleTopLevelDecl(sd);
24      sd = sd->getNextDeclarator();
25    }
26  else
27    HandleTopLevelDecl(d);
28}
29