LLVM 19.0.0git
ConfigManager.h
Go to the documentation of this file.
1//===- ConfigManager.h ------------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_OBJCOPY_CONFIGMANAGER_H
10#define LLVM_OBJCOPY_CONFIGMANAGER_H
11
19
20namespace llvm {
21namespace objcopy {
22
24 virtual ~ConfigManager() {}
25
26 const CommonConfig &getCommonConfig() const override { return Common; }
27
28 Expected<const ELFConfig &> getELFConfig() const override { return ELF; }
29
31
33
35
37
38 // All configs.
45};
46
47} // namespace objcopy
48} // namespace llvm
49
50#endif // LLVM_OBJCOPY_CONFIGMANAGER_H
Tagged union holding either a T or a Error.
Definition: Error.h:474
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
const CommonConfig & getCommonConfig() const override
Definition: ConfigManager.h:26
Expected< const ELFConfig & > getELFConfig() const override
Definition: ConfigManager.h:28
Expected< const XCOFFConfig & > getXCOFFConfig() const override
Expected< const COFFConfig & > getCOFFConfig() const override
Expected< const MachOConfig & > getMachOConfig() const override
Expected< const WasmConfig & > getWasmConfig() const override