9#ifndef LLDB_SOURCE_PLUGINS_LANGUAGERUNTIME_OBJC_APPLEOBJCRUNTIME_APPLEOBJCTYPEENCODINGPARSER_H
10#define LLDB_SOURCE_PLUGINS_LANGUAGERUNTIME_OBJC_APPLEOBJCRUNTIME_APPLEOBJCTYPEENCODINGPARSER_H
16#include "clang/AST/ASTContext.h"
25 bool for_expression)
override;
38 llvm::StringRef &type,
bool for_expression,
39 uint32_t *bitfield_bit_size =
nullptr);
45 llvm::StringRef &type,
bool for_expression,
46 char opener,
char closer, uint32_t kind);
57 llvm::StringRef &type,
bool for_expression);
60 llvm::StringRef &type,
clang::QualType BuildArray(TypeSystemClang &ast_ctx, llvm::StringRef &type, bool for_expression)
clang::QualType BuildAggregate(TypeSystemClang &clang_ast_ctx, llvm::StringRef &type, bool for_expression, char opener, char closer, uint32_t kind)
clang::QualType BuildObjCObjectPointerType(TypeSystemClang &clang_ast_ctx, llvm::StringRef &type, bool for_expression)
std::optional< std::string > ReadQuotedString(llvm::StringRef &type)
clang::QualType BuildStruct(TypeSystemClang &ast_ctx, llvm::StringRef &type, bool for_expression)
CompilerType RealizeType(TypeSystemClang &ast_ctx, const char *name, bool for_expression) override
~AppleObjCTypeEncodingParser() override=default
StructElement ReadStructElement(TypeSystemClang &ast_ctx, llvm::StringRef &type, bool for_expression)
ObjCLanguageRuntime & m_runtime
std::string ReadStructName(llvm::StringRef &type)
AppleObjCTypeEncodingParser(ObjCLanguageRuntime &runtime)
uint32_t ReadNumber(llvm::StringRef &type)
clang::QualType BuildUnion(TypeSystemClang &ast_ctx, llvm::StringRef &type, bool for_expression)
clang::QualType BuildType(TypeSystemClang &clang_ast_ctx, llvm::StringRef &type, bool for_expression, uint32_t *bitfield_bit_size=nullptr)
Generic representation of a type in a programming language.
A TypeSystem implementation based on Clang.
A class that represents a running process on the host machine.