|
jaulib v1.4.0-2-g788cf73
Jau Support Library (C++, Java, ..)
|
OS Support Functionality. More...
Namespaces | |
| namespace | jau::os::impl |
Classes | |
| class | jau::os::DynamicLinker |
| Low level secure dynamic linker access. More... | |
| class | jau::os::DynamicLookup |
Interface callers may use ProcAddressHelper's reset helper method to install function pointers into a ProcAddressTable. More... | |
| class | jau::os::FuncAddrResolver |
| class | jau::os::NativeLibrary |
| Runtime libary dynamic library (RTLD) access. More... | |
| struct | jau::os::RuntimeOSInfo |
| class | jau::os::UserInfo |
| User account information of the underlying OS. More... | |
Enumerations | |
| enum class | jau::os::abi_type_t : uint16_t { jau::os::abi_type_t::generic = 0x00 , jau::os::abi_type_t::gnu_armel = 0x01 , jau::os::abi_type_t::gnu_armhf = 0x02 , jau::os::abi_type_t::aarch64 = 0x03 , jau::os::abi_type_t::wasm32_gen = 0x20 , jau::os::abi_type_t::wasm32_ems = 0x21 , jau::os::abi_type_t::wasm64_gen = 0x2a , jau::os::abi_type_t::wasm64_ems = 0x2b } |
| enum class | jau::os::os_type_t : uint32_t { jau::os::os_type_t::Unix = 0b00000000000000000000000000000001U , jau::os::os_type_t::Windows = 0b00000000000000000000000000000010U , jau::os::os_type_t::Linux = 0b00000000000000000000000100000001U , jau::os::os_type_t::Android = 0b00000000000000000000001100000001U , jau::os::os_type_t::FreeBSD = 0b00000000000000000000010000000001U , jau::os::os_type_t::Darwin = 0b00000000000000000000100000000001U , jau::os::os_type_t::QnxNTO = 0b00000000000000000001000000000001U , jau::os::os_type_t::GenWasm = 0b00000001000000000000000000000000U , jau::os::os_type_t::Emscripten = 0b00000001000000000000000000000001U , jau::os::os_type_t::native = impl::get_host_os_id() } |
| OS type bits and unique IDs. More... | |
Functions | |
| constexpr_cxx20 std::string | jau::os::dir_separator () noexcept |
| Returns the OS's path separator as a string, e.g. | |
| constexpr char | jau::os::dir_separator_char () noexcept |
| Returns the OS's path separator character, e.g. | |
| abi_type_t | jau::os::get_abi_type () noexcept |
| constexpr abi_type_t | jau::os::get_abi_type (const jau::cpu::cpu_family_t cpu) noexcept |
| std::string | jau::os::get_os_and_arch () noexcept |
| Returns this hosts's common name, see get_os_and_arch() | |
| std::string | jau::os::get_os_and_arch (const os_type_t os, const jau::cpu::cpu_family_t cpu, const abi_type_t abi, const endian_t e) noexcept |
| Returns the common name for the given os_type, jau::cpu::cpu_family, abi_type and endian. | |
| std::string | jau::os::get_platform_info () noexcept |
| std::string | jau::os::get_platform_info (std::string &sb) noexcept |
| bool | jau::os::get_rt_os_info (RuntimeOSInfo &info) noexcept |
| constexpr bool | jau::os::has_pthread () noexcept |
Evaluates true if platform supports posix compatible threading. | |
| constexpr bool | jau::os::is_android () noexcept |
Evaluates true if platform os_type::native contains os_type::Android. | |
| constexpr bool | jau::os::is_darwin () noexcept |
Evaluates true if platform os_type::native contains os_type::Darwin. | |
| constexpr bool | jau::os::is_defined_os_type (const os_type_t v) noexcept |
Evaluates true if the given os_type is defined, i.e. | |
| constexpr bool | jau::os::is_emscripten () noexcept |
Evaluates true if platform os_type::native contains os_type::Emscripten. | |
| constexpr bool | jau::os::is_freebsd () noexcept |
Evaluates true if platform os_type::native contains os_type::FreeBSD. | |
| constexpr bool | jau::os::is_generic_wasm () noexcept |
Evaluates true if platform os_type::native contains os_type::GenWasm. | |
| constexpr bool | jau::os::is_linux () noexcept |
Evaluates true if platform os_type::native contains os_type::Linux. | |
| constexpr bool | jau::os::is_qnxnto () noexcept |
Evaluates true if platform os_type::native contains os_type::QnxNTO. | |
| constexpr bool | jau::os::is_unix () noexcept |
Evaluates true if platform os_type::native contains os_type::Unix. | |
| constexpr bool | jau::os::is_windows () noexcept |
Evaluates true if platform os_type::native contains os_type::Windows. | |
| jau::os::JAU_MAKE_BITFIELD_ENUM_STRING (os_type_t, Unix, Windows, Linux, Android, FreeBSD, Darwin, QnxNTO, GenWasm, Emscripten) | |
| jau::os::JAU_MAKE_ENUM_STRING (abi_type_t, generic, gnu_armel, gnu_armhf, aarch64, wasm32_gen, wasm32_ems, wasm64_gen, wasm64_ems) | |
| constexpr_cxx20 std::string | jau::os::path_separator () noexcept |
| Returns the OS's path separator as a string, e.g. | |
| constexpr char | jau::os::path_separator_char () noexcept |
| Returns the OS's path separator character, e.g. | |
OS Support Functionality.
Available predefined macros denoting the Operating Systems
__FreeBSD__ : FreeBSD__linux__ : Linux, w/o Android: __linux__ && !__ANDROID____ANDROID__ : Android, implies __linux___WIN32 : Windows_WIN64 : Windows 64 bit, implies _WIN32__APPLE__ : Darwin, i.e. MacOS or iOS__ros__ : Akaros__native_client__: NaCL__asmjs__ : AsmJS__EMSCRIPTEN__ : emscripten for asm.js and WebAssembly__Fuchsia__ : FuchsiaFurther infos:
|
strong |
OS type bits and unique IDs.
Definition at line 114 of file os_support.hpp.
|
strong |
Definition at line 227 of file os_support.hpp.
| jau::os::JAU_MAKE_BITFIELD_ENUM_STRING | ( | os_type_t | , |
| Unix | , | ||
| Windows | , | ||
| Linux | , | ||
| Android | , | ||
| FreeBSD | , | ||
| Darwin | , | ||
| QnxNTO | , | ||
| GenWasm | , | ||
| Emscripten | ) |
|
constexprnoexcept |
Evaluates true if the given os_type is defined, i.e.
Unix, Windows, Linux, Android, ...
Definition at line 142 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Unix.
Definition at line 171 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Windows.
Definition at line 174 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Linux.
Definition at line 177 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Android.
Definition at line 180 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::FreeBSD.
Definition at line 183 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Darwin.
Definition at line 186 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::QnxNTO.
Definition at line 189 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::GenWasm.
Definition at line 192 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform os_type::native contains os_type::Emscripten.
Definition at line 195 of file os_support.hpp.
|
constexprnoexcept |
Evaluates true if platform supports posix compatible threading.
Definition at line 198 of file os_support.hpp.
|
noexcept |
|
constexprnoexcept |
Definition at line 244 of file os_support.hpp.
|
inlinenoexcept |
| jau::os::JAU_MAKE_ENUM_STRING | ( | abi_type_t | , |
| generic | , | ||
| gnu_armel | , | ||
| gnu_armhf | , | ||
| aarch64 | , | ||
| wasm32_gen | , | ||
| wasm32_ems | , | ||
| wasm64_gen | , | ||
| wasm64_ems | ) |
|
noexcept |
Returns the common name for the given os_type, jau::cpu::cpu_family, abi_type and endian.
An excerpt of supported os.and.arch strings:
Definition at line 64 of file os_support.cpp.
|
inlinenoexcept |
Returns this hosts's common name, see get_os_and_arch()
Definition at line 305 of file os_support.hpp.
|
constexprnoexcept |
Returns the OS's path separator character, e.g.
; for Windows and : for Unix (rest of the world)
Definition at line 310 of file os_support.hpp.
|
noexcept |
Returns the OS's path separator as a string, e.g.
; for Windows and : for Unix (rest of the world)
Definition at line 318 of file os_support.hpp.
|
constexprnoexcept |
Returns the OS's path separator character, e.g.
\\ for Windows and / for Unix (rest of the world)
Definition at line 323 of file os_support.hpp.
|
noexcept |
Returns the OS's path separator as a string, e.g.
\\ for Windows and / for Unix (rest of the world)
Definition at line 332 of file os_support.hpp.
|
noexcept |
Definition at line 166 of file os_support.cpp.
|
inlinenoexcept |