Struct ra_ap_hir::CfgOptions [−][src]
pub struct CfgOptions { /* fields omitted */ }
Expand description
Configuration options used for conditional compilation on items with cfg
attributes.
We have two kind of options in different namespaces: atomic options like unix
, and
key-value options like target_arch="x86"
.
Note that for key-value options, one key can have multiple values (but not none).
feature
is an example. We have both feature="foo"
and feature="bar"
if features
foo
and bar
are both enabled. And here, we store key-value options as a set of tuple
of key and value in key_values
.
See: https://doc.rust-lang.org/reference/conditional-compilation.html#set-configuration-options
Implementations
impl CfgOptions
[src]
impl CfgOptions
[src]pub fn check(&self, cfg: &CfgExpr) -> Option<bool>
[src]
pub fn insert_atom(&mut self, key: SmolStr)
[src]
pub fn insert_key_value(&mut self, key: SmolStr, value: SmolStr)
[src]
pub fn apply_diff(&mut self, diff: CfgDiff)
[src]
Trait Implementations
impl Clone for CfgOptions
[src]
impl Clone for CfgOptions
[src]pub fn clone(&self) -> CfgOptions
[src]
pub fn clone(&self) -> CfgOptions
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for CfgOptions
[src]
impl Debug for CfgOptions
[src]impl Default for CfgOptions
[src]
impl Default for CfgOptions
[src]pub fn default() -> CfgOptions
[src]
pub fn default() -> CfgOptions
[src]Returns the “default value” for a type. Read more
impl PartialEq<CfgOptions> for CfgOptions
[src]
impl PartialEq<CfgOptions> for CfgOptions
[src]pub fn eq(&self, other: &CfgOptions) -> bool
[src]
pub fn eq(&self, other: &CfgOptions) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
pub fn ne(&self, other: &CfgOptions) -> bool
[src]
pub fn ne(&self, other: &CfgOptions) -> bool
[src]This method tests for !=
.
impl Eq for CfgOptions
[src]
impl StructuralEq for CfgOptions
[src]
impl StructuralPartialEq for CfgOptions
[src]
Auto Trait Implementations
impl RefUnwindSafe for CfgOptions
impl Send for CfgOptions
impl Sync for CfgOptions
impl Unpin for CfgOptions
impl UnwindSafe for CfgOptions
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Cast for T
impl<T> Cast for T
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
Cast a value to type U
using CastTo
.
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]pub fn equivalent(&self, key: &K) -> bool
[src]
pub fn equivalent(&self, key: &K) -> bool
[src]Compare self to key
and return true
if they are equal.
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> Any for T where
T: Any,
T: Any,
impl<T> CloneAny for T where
T: Any + Clone,
T: Any + Clone,