| // Part of the Crubit project, under the Apache License v2.0 with LLVM | |
| // Exceptions. See /LICENSE for license information. | |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
| // Automatically @generated Rust bindings for the following C++ target: | |
| // //examples/cpp/unsafe_attributes:example_lib | |
| #![rustfmt::skip] | |
| #![feature(custom_inner_attributes)] | |
| #![allow(stable_features)] | |
| #![allow(improper_ctypes)] | |
| #![allow(nonstandard_style)] | |
| #![allow(unused)] | |
| #![allow(deprecated)] | |
| #![allow(unknown_lints, suspicious_runtime_symbol_definitions)] | |
| #![deny(warnings)] | |
| #[inline(always)] | |
| pub fn SafeSignatureWithoutAnnotation() { | |
| unsafe { crate::detail::__rust_thunk___Z30SafeSignatureWithoutAnnotationv() } | |
| } | |
| /// # Safety | |
| /// | |
| /// The C++ function is explicitly annotated as unsafe. Ensure that its safety requirements are upheld. | |
| #[inline(always)] | |
| pub unsafe fn SafeSignatureButAnnotatedUnsafe() { | |
| unsafe { crate::detail::__rust_thunk___Z31SafeSignatureButAnnotatedUnsafev() } | |
| } | |
| /// # Safety | |
| /// | |
| /// The caller must ensure that the following unsafe arguments are not misused by the function: | |
| /// * `__param_0`: raw pointer | |
| #[inline(always)] | |
| pub unsafe fn UnsafeSignatureWithoutAnnotation(__param_0: *mut ::ffi_11::c_void) { | |
| unsafe { crate::detail::__rust_thunk___Z32UnsafeSignatureWithoutAnnotationPv(__param_0) } | |
| } | |
| #[inline(always)] | |
| pub fn UnsafeSignatureButAnnotatedSafe(__param_0: *mut ::ffi_11::c_void) { | |
| unsafe { crate::detail::__rust_thunk___Z31UnsafeSignatureButAnnotatedSafePv(__param_0) } | |
| } | |
| // is_unsafe= | |
| #[inline(always)] | |
| pub fn SafeBasedOnBoolean() { | |
| unsafe { crate::detail::__rust_thunk___Z18SafeBasedOnBooleanv() } | |
| } | |
| // is_unsafe= | |
| /// # Safety | |
| /// | |
| /// The C++ function is explicitly annotated as unsafe. Ensure that its safety requirements are upheld. | |
| #[inline(always)] | |
| pub unsafe fn UnsafeBasedOnBoolean() { | |
| unsafe { crate::detail::__rust_thunk___Z20UnsafeBasedOnBooleanv() } | |
| } | |
| mod detail { | |
| #[allow(unused_imports)] | |
| use super::*; | |
| unsafe extern "C" { | |
| pub(crate) unsafe fn __rust_thunk___Z30SafeSignatureWithoutAnnotationv(); | |
| pub(crate) unsafe fn __rust_thunk___Z31SafeSignatureButAnnotatedUnsafev(); | |
| pub(crate) unsafe fn __rust_thunk___Z32UnsafeSignatureWithoutAnnotationPv( | |
| __param_0: *mut ::ffi_11::c_void, | |
| ); | |
| pub(crate) unsafe fn __rust_thunk___Z31UnsafeSignatureButAnnotatedSafePv( | |
| __param_0: *mut ::ffi_11::c_void, | |
| ); | |
| pub(crate) unsafe fn __rust_thunk___Z18SafeBasedOnBooleanv(); | |
| pub(crate) unsafe fn __rust_thunk___Z20UnsafeBasedOnBooleanv(); | |
| } | |
| } |