| //===- lib/MC/MCNullStreamer.cpp - Dummy Streamer Implementation ----------===// | 
 | // | 
 | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. | 
 | // See https://llvm.org/LICENSE.txt for license information. | 
 | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | 
 | // | 
 | //===----------------------------------------------------------------------===// | 
 |  | 
 | #include "llvm/ADT/StringRef.h" | 
 | #include "llvm/MC/MCDirectives.h" | 
 | #include "llvm/MC/MCStreamer.h" | 
 | #include "llvm/Support/SMLoc.h" | 
 | namespace llvm { | 
 | class MCContext; | 
 | class MCExpr; | 
 | class MCSection; | 
 | class MCSymbol; | 
 | } // namespace llvm | 
 |  | 
 | using namespace llvm; | 
 |  | 
 | namespace { | 
 |  | 
 |   class MCNullStreamer : public MCStreamer { | 
 |   public: | 
 |     MCNullStreamer(MCContext &Context) : MCStreamer(Context) {} | 
 |  | 
 |     /// @name MCStreamer Interface | 
 |     /// @{ | 
 |  | 
 |     bool hasRawTextSupport() const override { return true; } | 
 |     void emitRawTextImpl(StringRef String) override {} | 
 |  | 
 |     bool emitSymbolAttribute(MCSymbol *Symbol, | 
 |                              MCSymbolAttr Attribute) override { | 
 |       return true; | 
 |     } | 
 |  | 
 |     void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size, | 
 |                           Align ByteAlignment) override {} | 
 |     void emitZerofill(MCSection *Section, MCSymbol *Symbol = nullptr, | 
 |                       uint64_t Size = 0, Align ByteAlignment = Align(1), | 
 |                       SMLoc Loc = SMLoc()) override {} | 
 |     void emitGPRel32Value(const MCExpr *Value) override {} | 
 |     void beginCOFFSymbolDef(const MCSymbol *Symbol) override {} | 
 |     void emitCOFFSymbolStorageClass(int StorageClass) override {} | 
 |     void emitCOFFSymbolType(int Type) override {} | 
 |     void endCOFFSymbolDef() override {} | 
 |     void | 
 |     emitXCOFFSymbolLinkageWithVisibility(MCSymbol *Symbol, MCSymbolAttr Linkage, | 
 |                                          MCSymbolAttr Visibility) override {} | 
 |   }; | 
 |  | 
 | } | 
 |  | 
 | MCStreamer *llvm::createNullStreamer(MCContext &Context) { | 
 |   return new MCNullStreamer(Context); | 
 | } |