Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  mod.rs

  Sprache: Rust
 

//! This module contains the future directory structure. If possible, new definitions should
//! get added here.
//!
//! Eventually everything should be moved over, and we will move this directory to the top
//! level in `src`.
//!
//! # Basic structure
//!
//! Each child module here represents a library or group of libraries that we are binding. Each of
//! these has several submodules, representing either a directory or a header file in that library.
//!
//! `#include`s turn into `pub use ...*;` statements. Then at the root level (here), we choose
//! which top-level headers we want to reexport the definitions for.
//!
//! All modules are only crate-public since we don't reexport this structure.

mod common;

/* The `pub(crate) use ...` statements are commented while the modules are empty */

// Platform libraries and combined platform+libc
//
// Not supported or not needed:
// * amdhsa
// * cuda
// * lynxos178
// * managarm
// * motor
// * none
// * psp
// * psx
// * uefi
// * unknown
// * vexos
// * zkvm
//
// Combined to target_vendor = "apple"
// * ios
// * macos
// * tvos
// * visionos
// * watchos
cfg_if! {
    if #[cfg(target_os = "aix")] {
        mod aix;
        pub(crateuse aix::*;
    } else if #[cfg(target_os = "android")] {
        mod bionic_libc;
        pub(crateuse bionic_libc::*;
    } else if #[cfg(target_vendor = "apple")] {
        mod apple;
        pub(crateuse apple::*;
    } else if #[cfg(target_os = "cygwin")] {
        mod cygwin;
        pub(crateuse cygwin::*;
    } else if #[cfg(target_os = "dragonfly")] {
        mod dragonfly;
        pub(crateuse dragonfly::*;
    } else if #[cfg(target_os = "emscripten")] {
        mod emscripten;
        pub use emscripten::sched::*;
        pub(crateuse emscripten::*;
    } else if #[cfg(target_os = "espidf")] {
        mod espidf;
        // pub(crate) use espidf::*;
    } else if #[cfg(target_os = "freebsd")] {
        mod freebsd;
        pub(crateuse freebsd::*;
    } else if #[cfg(target_os = "fuchsia")] {
        mod fuchsia;
        pub(crateuse fuchsia::*;
    } else if #[cfg(target_os = "haiku")] {
        mod haiku;
        pub(crateuse haiku::*;
    } else if #[cfg(target_os = "hermit")] {
        mod hermit_abi;
        // pub(crate) use hermit_abi::*;
    } else if #[cfg(target_os = "horizon")] {
        mod horizon;
        // pub(crate) use horizon::*;
    } else if #[cfg(target_os = "hurd")] {
        mod hurd;
        // pub(crate) use hurd::*;
    } else if #[cfg(target_os = "illumos")] {
        mod illumos;
        pub(crateuse illumos::*;
    } else if #[cfg(target_os = "l4re")] {
        mod l4re;
        // pub(crate) use l4re::*;
    } else if #[cfg(target_os = "linux")] {
        mod linux_uapi;
        pub(crateuse linux_uapi::*;
    } else if #[cfg(target_os = "netbsd")] {
        mod netbsd;
        pub(crateuse netbsd::*;
    } else if #[cfg(target_os = "nto")] {
        mod nto;
        pub(crateuse nto::*;
    } else if #[cfg(target_os = "nuttx")] {
        mod nuttx;
        pub(crateuse nuttx::*;
    } else if #[cfg(target_os = "openbsd")] {
        mod openbsd;
        pub(crateuse openbsd::*;
    } else if #[cfg(target_os = "qurt")] {
        pub mod qurt;
        pub use qurt::*;
    } else if #[cfg(target_os = "redox")] {
        mod redox;
        // pub(crate) use redox::*;
    } else if #[cfg(target_os = "rtems")] {
        mod rtems;
        // pub(crate) use rtems::*;
    } else if #[cfg(target_os = "solaris")] {
        mod solaris;
        pub(crateuse solaris::*;
    } else if #[cfg(target_os = "solid_asp3")] {
        mod solid;
        // pub(crate) use solid::*;
    } else if #[cfg(target_os = "teeos")] {
        mod teeos;
        // pub(crate) use teeos::*;
    } else if #[cfg(target_os = "trusty")] {
        mod trusty;
        // pub(crate) use trusty::*;
    } else if #[cfg(target_os = "vita")] {
        mod vita;
        // pub(crate) use vita::*;
    } else if #[cfg(target_os = "vxworks")] {
        mod vxworks;
        pub(crateuse vxworks::*;
    } else if #[cfg(target_os = "wasi")] {
        mod wasi;
        // pub(crate) use wasi::*;
    } else if #[cfg(target_os = "windows")] {
        mod ucrt;
        // pub(crate) use ucrt::*;
    } else if #[cfg(target_os = "xous")] {
        mod xous;
        // pub(crate) use xous::*;
    }
}

// Multi-platform libc
cfg_if! {
    // FIXME(vxworks): vxworks sets `target_env = "gnu"` but maybe shouldn't.
    if #[cfg(all(
        target_family = "unix",
        target_env = "gnu",
        not(target_os = "vxworks")
    ))] {
        mod glibc;
        pub(crateuse glibc::*;
    } else if #[cfg(any(target_env = "musl", target_env = "ohos"))] {
        // OhOS also uses the musl libc
        mod musl;
        pub use musl::sched::*;
        pub(crateuse musl::*;
    } else if #[cfg(target_env = "newlib")] {
        mod newlib;
        pub(crateuse newlib::*;
    } else if #[cfg(target_env = "relibc")] {
        mod relibc;
        pub(crateuse relibc::*;
    } else if #[cfg(target_env = "sgx")] {
        mod sgx;
        // pub(crate) use sgx::*;
    } else if #[cfg(target_env = "uclibc")] {
        mod uclibc;
        pub(crateuse uclibc::*;
    }
}

// Per-OS headers we export
cfg_if! {
    if #[cfg(target_os = "android")] {
        pub use sys::socket::*;
    } else if #[cfg(target_os = "linux")] {
        pub use linux::can::bcm::*;
        pub use linux::can::error::*;
        pub use linux::can::j1939::*;
        pub use linux::can::raw::*;
        pub use linux::can::*;
        pub use linux::keyctl::*;
        pub use linux::membarrier::*;
        pub use linux::netlink::*;
        pub use linux::pidfd::*;
        #[cfg(target_env = "gnu")]
        pub use net::route::*;
    } else if #[cfg(target_vendor = "apple")] {
        pub use pthread::*;
        pub use pthread_::introspection::*;
        pub use pthread_::pthread_spis::*;
        pub use pthread_::spawn::*;
        pub use pthread_::stack_np::*;
        pub use signal::*;
    } else if #[cfg(target_os = "netbsd")] {
        pub use net::if_::*;
        pub use sys::file::*;
        pub use sys::ipc::*;
        pub use sys::socket::*;
        pub use sys::statvfs::*;
        pub use sys::time::*;
        pub use sys::timex::*;
        pub use sys::types::*;
        pub use utmp_::*;
        pub use utmpx_::*;
    } else if #[cfg(target_os = "openbsd")] {
        pub use sys::ipc::*;
    } else if #[cfg(target_os = "nto")] {
        pub use net::bpf::*;
        pub use net::if_::*;
    }
}

// Per-env headers we export
cfg_if! {
    if #[cfg(any(target_env = "musl", target_env = "ohos"))] {
        pub use sys::socket::*;
    }
}

// Per-family headers we export
cfg_if! {
    if #[cfg(all(target_family = "unix", not(target_os = "qurt")))] {
        // FIXME(pthread): eventually all platforms should use this module
        #[cfg(any(
            target_os = "android",
            target_os = "emscripten",
            target_os = "l4re",
            target_os = "linux"
        ))]
        pub use pthread::*;
        pub use unistd::*;
    }
}

Messung V0.5 in Prozent
C=75 H=100 G=88

¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet am  2026-08-25) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Statistik
#Sources=434850
#Domains=661743