Enum guppy::platform::PlatformSpec [−][src]
Expand description
A specifier for a single platform, or for a range of platforms.
Some uses of guppy
care about a single platform, and others care about queries against the
intersection of all hypothetical platforms, or against a union of any of them. PlatformSpec
handles the
PlatformSpec
does not currently support expressions, but it might in the future, using an
SMT solver.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Always
The intersection of all platforms.
Dependency queries performed against this variant will return EnabledTernary::Enabled
if
and only if a dependency is not platform-dependent. They can never return
EnabledTernary::Unknown
.
This variant does not currently understand expressions that always evaluate to true
(tautologies), like cfg(any(unix, not(unix)))
or cfg(all())
. In the future, an SMT
solver would be able to handle such expressions.
Platform(Arc<Platform>)
An individual platform.
Dependency queries performed against this variant will return EnabledTernary::Enabled
if
and only if a dependency is enabled on this platform. They may also return
EnabledTernary::Unknown
if a platform is not enabled.
Any
The union of all platforms.
Dependency queries performed against this variant will return EnabledTernary::Enabled
if
a dependency is enabled on any platform.
This variant does not currently understand expressions that always evaluate to false
(contradictions), like cfg(all(unix, not(unix)))
or cfg(any())
. In the future, an SMT
solver would be able to handle such expressions.
Implementations
Returns a PlatformSpec
corresponding to the current platform, as detected at build time.
Returns an error if the current platform was unknown to the version of target-spec
in
use.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for PlatformSpec
impl Send for PlatformSpec
impl Sync for PlatformSpec
impl Unpin for PlatformSpec
impl UnwindSafe for PlatformSpec
Blanket Implementations
Mutably borrows from an owned value. Read more