| //===- llvm/TableGen/TableGenAction.h - defines TableGenAction --*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // This file defines the TableGenAction base class to be derived from by |
| // tblgen tools. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef LLVM_TABLEGEN_TABLEGENACTION_H |
| #define LLVM_TABLEGEN_TABLEGENACTION_H |
| |
| namespace llvm { |
| |
| class raw_ostream; |
| class RecordKeeper; |
| |
| class TableGenAction { |
| public: |
| virtual ~TableGenAction() {} |
| |
| /// Perform the action using Records, and write output to OS. |
| /// @returns true on error, false otherwise |
| virtual bool operator()(raw_ostream &OS, RecordKeeper &Records) = 0; |
| }; |
| |
| } |
| |
| #endif |