Util.h revision 9d718635fa805674aaba5d938f3dc6b35b8632ba
1//===--- Util.h - Common Driver Utilities -----------------------*- 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#ifndef CLANG_DRIVER_UTIL_H_
11#define CLANG_DRIVER_UTIL_H_
12
13#include "clang/Basic/LLVM.h"
14#include "llvm/ADT/DenseMap.h"
15
16namespace clang {
17namespace driver {
18  class Action;
19  class JobAction;
20
21  /// ArgStringList - Type used for constructing argv lists for subprocesses.
22  typedef SmallVector<const char*, 16> ArgStringList;
23
24  /// ArgStringMap - Type used to map a JobAction to its result file.
25  typedef llvm::DenseMap<const JobAction*, const char*> ArgStringMap;
26
27  /// ActionList - Type used for lists of actions.
28  typedef SmallVector<Action*, 3> ActionList;
29
30} // end namespace driver
31} // end namespace clang
32
33#endif
34