//===----- Thunk.h - Declarations related to VTable Thunks ------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /// /// \file /// Enums/classes describing THUNK related information about constructors, /// destructors and thunks. /// //===----------------------------------------------------------------------===// #ifndef LLVM_CLANG_BASIC_THUNK_H #define LLVM_CLANG_BASIC_THUNK_H #include <cstdint> #include <cstring> namespace clang { class CXXMethodDecl; class Type; /// A return adjustment. struct ReturnAdjustment { … }; /// A \c this pointer adjustment. struct ThisAdjustment { … }; /// The \c this pointer adjustment as well as an optional return /// adjustment for a thunk. struct ThunkInfo { … }; } // end namespace clang #endif