blob: 4702d6dac2103fdf0f52290aefa277a489a43cbe [file] [log] [blame]
Zachary Turner21473f72015-02-08 00:29:29 +00001//===- PDBSymbolFunc.cpp - --------------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
Zachary Turner52c9f882015-02-14 03:53:56 +000010#include "llvm/DebugInfo/PDB/PDBSymbolFunc.h"
11
Zachary Turner2a5c0a22015-02-13 01:23:51 +000012#include "llvm/DebugInfo/PDB/IPDBSession.h"
Zachary Turnera952c492015-02-13 07:40:03 +000013#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h"
Zachary Turner9a818ad2015-02-22 22:03:38 +000014#include "llvm/DebugInfo/PDB/PDBSymDumper.h"
15
Chandler Carruth71f308a2015-02-13 09:09:03 +000016#include <utility>
Zachary Turner21473f72015-02-08 00:29:29 +000017
18using namespace llvm;
Zachary Turner98571ed2015-02-08 22:53:53 +000019PDBSymbolFunc::PDBSymbolFunc(const IPDBSession &PDBSession,
Zachary Turnerbae16b32015-02-08 20:58:09 +000020 std::unique_ptr<IPDBRawSymbol> Symbol)
21 : PDBSymbol(PDBSession, std::move(Symbol)) {}
Zachary Turner21473f72015-02-08 00:29:29 +000022
Zachary Turner04b966d2015-02-13 17:57:09 +000023std::unique_ptr<PDBSymbolTypeFunctionSig> PDBSymbolFunc::getSignature() const {
24 return Session.getConcreteSymbolById<PDBSymbolTypeFunctionSig>(getTypeId());
25}
26
Zachary Turnera5549172015-02-10 22:43:25 +000027void PDBSymbolFunc::dump(raw_ostream &OS, int Indent,
Zachary Turner9a818ad2015-02-22 22:03:38 +000028 PDBSymDumper &Dumper) const {
29 Dumper.dump(*this, OS, Indent);
Zachary Turnera5549172015-02-10 22:43:25 +000030}