1254721Semaste//===-- DWARFDebugMacinfo.cpp -----------------------------------*- C++ -*-===//
2254721Semaste//
3254721Semaste//                     The LLVM Compiler Infrastructure
4254721Semaste//
5254721Semaste// This file is distributed under the University of Illinois Open Source
6254721Semaste// License. See LICENSE.TXT for details.
7254721Semaste//
8254721Semaste//===----------------------------------------------------------------------===//
9254721Semaste
10254721Semaste#include "DWARFDebugMacinfo.h"
11254721Semaste
12254721Semaste#include "DWARFDebugMacinfoEntry.h"
13254721Semaste#include "SymbolFileDWARF.h"
14254721Semaste
15254721Semaste#include "lldb/Core/Stream.h"
16254721Semaste
17254721Semasteusing namespace lldb_private;
18254721Semasteusing namespace std;
19254721Semaste
20254721SemasteDWARFDebugMacinfo::DWARFDebugMacinfo()
21254721Semaste{
22254721Semaste}
23254721Semaste
24254721SemasteDWARFDebugMacinfo::~DWARFDebugMacinfo()
25254721Semaste{
26254721Semaste}
27254721Semaste
28254721Semastevoid
29263363SemasteDWARFDebugMacinfo::Dump(Stream *s, const DWARFDataExtractor& macinfo_data, lldb::offset_t offset)
30254721Semaste{
31254721Semaste    DWARFDebugMacinfoEntry maninfo_entry;
32254721Semaste    if (macinfo_data.GetByteSize() == 0)
33254721Semaste    {
34254721Semaste        s->PutCString("< EMPTY >\n");
35254721Semaste        return;
36254721Semaste    }
37254721Semaste    if (offset == LLDB_INVALID_OFFSET)
38254721Semaste    {
39254721Semaste        offset = 0;
40254721Semaste        while (maninfo_entry.Extract(macinfo_data, &offset))
41254721Semaste            maninfo_entry.Dump(s);
42254721Semaste    }
43254721Semaste    else
44254721Semaste    {
45254721Semaste        if (maninfo_entry.Extract(macinfo_data, &offset))
46254721Semaste            maninfo_entry.Dump(s);
47254721Semaste    }
48254721Semaste}
49