Skip to main content

semaphore_bindings/
semaphore_bindings.rs

1// Copyright 2026 The Fuchsia Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// This file is automatically generated by //zircon/kernel/kernel:_kernel_bindgen_crate.semaphore-bindings.bindgen.
6
7#![expect(non_camel_case_types)]
8#![no_std]
9
10#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
11#[repr(C, align(8))]
12pub struct __BindgenOpaqueArray8<T>(pub T);
13impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray8<[T; N]> {
14    fn default() -> Self {
15        Self([<T as Default>::default(); N])
16    }
17}
18#[repr(C)]
19#[derive(Debug, Copy, Clone)]
20pub struct std_atomic<_Tp> {
21    pub _phantom_0: ::core::marker::PhantomData<::core::cell::UnsafeCell<_Tp>>,
22    pub _address: u8,
23}
24pub type std_atomic___base = u8;
25#[repr(C)]
26#[repr(align(8))]
27#[derive(Debug, Copy, Clone)]
28pub struct WaitQueue {
29    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 56usize]>,
30}
31#[repr(C)]
32#[derive(Debug)]
33pub struct Semaphore {
34    pub count_: __BindgenOpaqueArray8<[u8; 8usize]>,
35    pub waitq_: WaitQueue,
36}