Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*===-- llvm-c/Support.h - C Interface Types declarations ---------*- 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 *|
- |* *|
- |*===----------------------------------------------------------------------===*|
- |* *|
- |* This file defines types used by the C interface to LLVM. *|
- |* *|
- \*===----------------------------------------------------------------------===*/
- #ifndef LLVM_C_TYPES_H
- #define LLVM_C_TYPES_H
- #include "llvm-c/DataTypes.h"
- #include "llvm-c/ExternC.h"
- LLVM_C_EXTERN_C_BEGIN
- /**
- * @defgroup LLVMCSupportTypes Types and Enumerations
- *
- * @{
- */
- typedef int LLVMBool;
- /* Opaque types. */
- /**
- * LLVM uses a polymorphic type hierarchy which C cannot represent, therefore
- * parameters must be passed as base types. Despite the declared types, most
- * of the functions provided operate only on branches of the type hierarchy.
- * The declared parameter names are descriptive and specify which type is
- * required. Additionally, each type hierarchy is documented along with the
- * functions that operate upon it. For more detail, refer to LLVM's C++ code.
- * If in doubt, refer to Core.cpp, which performs parameter downcasts in the
- * form unwrap<RequiredType>(Param).
- */
- /**
- * Used to pass regions of memory through LLVM interfaces.
- *
- * @see llvm::MemoryBuffer
- */
- typedef struct LLVMOpaqueMemoryBuffer *LLVMMemoryBufferRef;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement