1*c9157d92SDimitry Andric //===- TextAPIError.cpp - Tapi Error ----------------------------*- C++ -*-===// 2*c9157d92SDimitry Andric // 3*c9157d92SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*c9157d92SDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5*c9157d92SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*c9157d92SDimitry Andric // 7*c9157d92SDimitry Andric //===----------------------------------------------------------------------===// 8*c9157d92SDimitry Andric /// 9*c9157d92SDimitry Andric /// \file 10*c9157d92SDimitry Andric /// \brief Implements TAPI Error. 11*c9157d92SDimitry Andric /// 12*c9157d92SDimitry Andric //===----------------------------------------------------------------------===// 13*c9157d92SDimitry Andric 14*c9157d92SDimitry Andric #include "llvm/TextAPI/TextAPIError.h" 15*c9157d92SDimitry Andric 16*c9157d92SDimitry Andric using namespace llvm; 17*c9157d92SDimitry Andric using namespace llvm::MachO; 18*c9157d92SDimitry Andric 19*c9157d92SDimitry Andric char TextAPIError::ID = 0; 20*c9157d92SDimitry Andric log(raw_ostream & OS) const21*c9157d92SDimitry Andricvoid TextAPIError::log(raw_ostream &OS) const { 22*c9157d92SDimitry Andric switch (EC) { 23*c9157d92SDimitry Andric case TextAPIErrorCode::NoSuchArchitecture: 24*c9157d92SDimitry Andric OS << "no such architecture"; 25*c9157d92SDimitry Andric break; 26*c9157d92SDimitry Andric case TextAPIErrorCode::InvalidInputFormat: 27*c9157d92SDimitry Andric OS << "invalid input format"; 28*c9157d92SDimitry Andric break; 29*c9157d92SDimitry Andric default: 30*c9157d92SDimitry Andric llvm_unreachable("unhandled TextAPIErrorCode"); 31*c9157d92SDimitry Andric } 32*c9157d92SDimitry Andric if (!Msg.empty()) 33*c9157d92SDimitry Andric OS << ": " << Msg; 34*c9157d92SDimitry Andric OS << "\n"; 35*c9157d92SDimitry Andric } 36*c9157d92SDimitry Andric convertToErrorCode() const37*c9157d92SDimitry Andricstd::error_code TextAPIError::convertToErrorCode() const { 38*c9157d92SDimitry Andric llvm_unreachable("convertToErrorCode is not supported."); 39*c9157d92SDimitry Andric } 40