//===- OptParserEmitter.h - Table Driven Command Line Parsing ---*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #ifndef UTILS_TABLEGEN_OPTPARSEREMITTER_H #define UTILS_TABLEGEN_OPTPARSEREMITTER_H #include "TableGenBackend.h" namespace llvm { /// OptParserEmitter - This tablegen backend takes an input .td file /// describing a list of options and emits a data structure for parsing and /// working with those options when given an input command line. class OptParserEmitter : public TableGenBackend { RecordKeeper &Records; bool GenDefs; public: OptParserEmitter(RecordKeeper &R, bool _GenDefs) : Records(R), GenDefs(_GenDefs) {} /// run - Output the option parsing information. /// /// \param GenHeader - Generate the header describing the option IDs.x void run(raw_ostream &OS); }; } #endif