11849Swollman//===- llvm/TableGen/Main.h - tblgen entry point ----------------*- C++ -*-===//
21849Swollman//
31849Swollman//                     The LLVM Compiler Infrastructure
41849Swollman//
51849Swollman// This file is distributed under the University of Illinois Open Source
61849Swollman// License. See LICENSE.TXT for details.
71849Swollman//
81849Swollman//===----------------------------------------------------------------------===//
91849Swollman//
101849Swollman// This file declares the common entry point for tblgen tools.
111849Swollman//
121849Swollman//===----------------------------------------------------------------------===//
131849Swollman
141849Swollman#ifndef LLVM_TABLEGEN_MAIN_H
151849Swollman#define LLVM_TABLEGEN_MAIN_H
161849Swollman
171849Swollmannamespace llvm {
181849Swollman
191849Swollmanclass RecordKeeper;
201849Swollmanclass raw_ostream;
211849Swollman/// \brief Perform the action using Records, and write output to OS.
221849Swollman/// \returns true on error, false otherwise
231849Swollmantypedef bool TableGenMainFn(raw_ostream &OS, RecordKeeper &Records);
241849Swollman
251849Swollmanint TableGenMain(char *argv0, TableGenMainFn *MainFn);
261849Swollman}
271849Swollman
281849Swollman#endif
291849Swollman