16#ifndef LLVM_CLANG_LIB_ScalableStaticAnalysis_CORE_MODELSTRINGCONVERSIONS_H
17#define LLVM_CLANG_LIB_ScalableStaticAnalysis_CORE_MODELSTRINGCONVERSIONS_H
21#include "llvm/ADT/StringRef.h"
22#include "llvm/Support/ErrorHandling.h"
36 return "CompilationUnit";
40 return "StaticLibrary";
42 return "MultiArchStaticLibrary";
44 llvm_unreachable(
"Unhandled BuildNamespaceKind variant");
49inline std::optional<BuildNamespaceKind>
51 if (Str ==
"CompilationUnit")
53 if (Str ==
"LinkUnit")
55 if (Str ==
"StaticLibrary")
57 if (Str ==
"MultiArchStaticLibrary")
77 llvm_unreachable(
"Unhandled EntityLinkageType variant");
82inline std::optional<EntityLinkageType>
86 if (Str ==
"Internal")
88 if (Str ==
"External")
std::optional< EntityLinkageType > entityLinkageTypeFromString(llvm::StringRef Str)
Parses a string produced by entityLinkageTypeToString().
std::optional< BuildNamespaceKind > buildNamespaceKindFromString(llvm::StringRef Str)
Parses a string produced by buildNamespaceKindToString().
@ Internal
static functions/variables, anonymous namespace
@ External
globally visible across translation units (including parameters of functions with external linkage)
llvm::StringRef buildNamespaceKindToString(BuildNamespaceKind BNK)
Returns the canonical string representation of BNK used for serialization and display (e....
llvm::StringRef entityLinkageTypeToString(EntityLinkageType LT)
Returns the canonical string representation of LT used for serialization and display (e....