pub enum Wall {
Apple,
Microsoft,
}Expand description
A target whose system headers and link inputs are not ours to distribute.
Variants§
Apple
Apple’s, which is macOS and iOS.
Microsoft
Microsoft’s, which is a Windows target in the MSVC environment and not a mingw-w64 one.
Implementations§
Source§impl Wall
impl Wall
Sourcepub const fn of(target: TargetTuple) -> Option<Self>
pub const fn of(target: TargetTuple) -> Option<Self>
The wall this target is behind, or None for the rest of the table.
The environment decides the Windows answer and the operating system decides the Apple one, because the two Windows environments are two different sets of link inputs under two different licences while every Apple platform reads one SDK.
Sourcepub const fn sdk(self) -> &'static str
pub const fn sdk(self) -> &'static str
What is behind the wall, named the way the platform’s own documentation names it.
Sourcepub const fn licence(self) -> &'static str
pub const fn licence(self) -> &'static str
The licence that puts it there, as a clause a sentence can be built around.
Sourcepub const fn under(self) -> Licence
pub const fn under(self) -> Licence
The licence as an identifier rather than as a clause, which is what a record carries.
Two spellings of one fact, and they are both here because a sentence and a field want
different things. Wall::licence is what a person is told and reads as English.
This is what crate::distribution writes into a column, where a clause would be
unreadable and a second vocabulary of licence names would be a thing to keep in step with
crate::Licence.
Sourcepub const fn ways(self) -> &'static str
pub const fn ways(self) -> &'static str
The lawful ways to get what is behind the wall, which every message here ends with.
A flag in each, because section 8.6’s third rule is that the fetch is never automatic and never silent, so every one of these paths is a person naming a path once.
Sourcepub fn no_headers(self, target: &str) -> String
pub fn no_headers(self, target: &str) -> String
Why a compile for target has no library headers to read.
The target is spelled by the caller rather than taken from the tuple, so that the message says the target the way the command line said it.