1226584Sdim//===- llvm/TableGen/Main.h - tblgen entry point ----------------*- C++ -*-===// 2226584Sdim// 3226584Sdim// The LLVM Compiler Infrastructure 4226584Sdim// 5226584Sdim// This file is distributed under the University of Illinois Open Source 6226584Sdim// License. See LICENSE.TXT for details. 7226584Sdim// 8226584Sdim//===----------------------------------------------------------------------===// 9226584Sdim// 10226584Sdim// This file declares the common entry point for tblgen tools. 11226584Sdim// 12226584Sdim//===----------------------------------------------------------------------===// 13226584Sdim 14226584Sdim#ifndef LLVM_TABLEGEN_MAIN_H 15226584Sdim#define LLVM_TABLEGEN_MAIN_H 16226584Sdim 17226584Sdimnamespace llvm { 18226584Sdim 19243830Sdimclass RecordKeeper; 20243830Sdimclass raw_ostream; 21243830Sdim/// \brief Perform the action using Records, and write output to OS. 22243830Sdim/// \returns true on error, false otherwise 23243830Sdimtypedef bool TableGenMainFn(raw_ostream &OS, RecordKeeper &Records); 24226584Sdim 25243830Sdimint TableGenMain(char *argv0, TableGenMainFn *MainFn); 26226584Sdim 27226584Sdim} 28226584Sdim 29226584Sdim#endif 30