jaulib v1.3.6
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 |