X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=utils%2FTableGen%2FTableGenBackend.h;h=9c2b948b0dfc426b61cf488ee65e3d2332f67e6f;hb=009f20a38957dc0d0319147d967f8b6b02b4d75b;hp=ae71d2c66bc53150799f6f16ecb65efd401ca8ff;hpb=18a6a94e1fc5cd10d50a91598b1465f31e307266;p=oota-llvm.git diff --git a/utils/TableGen/TableGenBackend.h b/utils/TableGen/TableGenBackend.h index ae71d2c66bc..9c2b948b0df 100644 --- a/utils/TableGen/TableGenBackend.h +++ b/utils/TableGen/TableGenBackend.h @@ -1,5 +1,12 @@ //===- TableGenBackend.h - Base class for TableGen Backends -----*- C++ -*-===// // +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// // The TableGenBackend class is provided as a common interface for all TableGen // backends. It provides useful services and an standardized interface. // @@ -8,29 +15,29 @@ #ifndef TABLEGENBACKEND_H #define TABLEGENBACKEND_H +#include "llvm/Support/raw_ostream.h" #include -#include + +namespace llvm { + class Record; class RecordKeeper; struct TableGenBackend { + virtual ~TableGenBackend() {} // run - All TableGen backends should implement the run method, which should // be the main entry point. - virtual void run(std::ostream &OS) = 0; + virtual void run(raw_ostream &OS) = 0; public: // Useful helper routines... /// EmitSourceFileHeader - Output a LLVM style file header to the specified /// ostream. - void EmitSourceFileHeader(const std::string &Desc, std::ostream &OS) const; + void EmitSourceFileHeader(const std::string &Desc, raw_ostream &OS) const; - /// getQualifiedName - Return the name of the specified record, with a - /// namespace qualifier if the record contains one. - std::string getQualifiedName(Record *R) const; - - /// getTarget - Return the current instance of the Target class. - Record *getTarget(RecordKeeper &RC) const; }; +} // End llvm namespace + #endif