1//===- ObjC.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 LLD_MACHO_OBJC_H
10#define LLD_MACHO_OBJC_H
11
12#include "llvm/Support/MemoryBuffer.h"
13
14namespace lld::macho {
15
16namespace objc {
17
18constexpr const char klass[] = "_OBJC_CLASS_$_";
19constexpr const char metaclass[] = "_OBJC_METACLASS_$_";
20constexpr const char ehtype[] = "_OBJC_EHTYPE_$_";
21constexpr const char ivar[] = "_OBJC_IVAR_$_";
22
23// Check for duplicate method names within related categories / classes.
24void checkCategories();
25
26} // namespace objc
27
28bool hasObjCSection(llvm::MemoryBufferRef);
29
30} // namespace lld::macho
31
32#endif
33

source code of lld/MachO/ObjC.h