pub struct CompilerCapabilities {
pub gcc_style_flags: Capability,
pub msvc_style_flags: Capability,
pub depfile_mmd_mf: Capability,
pub std_flag: Capability,
pub cxx_standard_17: Capability,
pub color_diagnostics_flag: Capability,
pub response_files: Capability,
pub json_diagnostics: Capability,
pub sarif_diagnostics: Capability,
}Expand description
Capability set for a C/C++ compiler. Every field is decided during detection so the planner can compare its required set against the resolved set without re-running parsing logic.
Fields§
§gcc_style_flags: CapabilityAccepts GCC-style -O<n>, -DNAME, -Idir, -c, -o.
msvc_style_flags: CapabilityAccepts MSVC-style /O<n>, /DNAME, /I dir. Detection-
only; the current backend never emits these.
depfile_mmd_mf: CapabilityAccepts -MMD -MF <file> to write a make-style depfile.
std_flag: CapabilityAccepts -std=c++NN.
cxx_standard_17: CapabilityAccepts -std=c++17 specifically (the planner’s current
fixed C++ standard).
color_diagnostics_flag: CapabilityAccepts a color-diagnostics flag (e.g.
-fdiagnostics-color=always). Detection-only today.
response_files: CapabilityAccepts response-file argv (@file). Detection-only today.
json_diagnostics: CapabilityAccepts a JSON diagnostics flag (-fdiagnostics-format=json
or equivalent). Detection-only; Cabin does not yet ask for
JSON diagnostics.
sarif_diagnostics: CapabilityAccepts a SARIF diagnostics flag. Detection-only.
Trait Implementations§
Source§impl Clone for CompilerCapabilities
impl Clone for CompilerCapabilities
Source§fn clone(&self) -> CompilerCapabilities
fn clone(&self) -> CompilerCapabilities
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CompilerCapabilities
impl Debug for CompilerCapabilities
Source§impl<'de> Deserialize<'de> for CompilerCapabilities
impl<'de> Deserialize<'de> for CompilerCapabilities
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CompilerCapabilities
impl PartialEq for CompilerCapabilities
Source§fn eq(&self, other: &CompilerCapabilities) -> bool
fn eq(&self, other: &CompilerCapabilities) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for CompilerCapabilities
impl Serialize for CompilerCapabilities
impl Eq for CompilerCapabilities
impl StructuralPartialEq for CompilerCapabilities
Auto Trait Implementations§
impl Freeze for CompilerCapabilities
impl RefUnwindSafe for CompilerCapabilities
impl Send for CompilerCapabilities
impl Sync for CompilerCapabilities
impl Unpin for CompilerCapabilities
impl UnsafeUnpin for CompilerCapabilities
impl UnwindSafe for CompilerCapabilities
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.