Struct lightningcss::targets::Browsers
source · pub struct Browsers {
pub android: Option<u32>,
pub chrome: Option<u32>,
pub edge: Option<u32>,
pub firefox: Option<u32>,
pub ie: Option<u32>,
pub ios_saf: Option<u32>,
pub opera: Option<u32>,
pub safari: Option<u32>,
pub samsung: Option<u32>,
}
Expand description
Browser versions to compile CSS for.
Versions are represented as a single 24-bit integer, with one byte
per major.minor.patch
component.
Example
This example represents a target of Safari 13.2.0.
use lightningcss::targets::Browsers;
let targets = Browsers {
safari: Some((13 << 16) | (2 << 8)),
..Browsers::default()
};
Fields§
§android: Option<u32>
§chrome: Option<u32>
§edge: Option<u32>
§firefox: Option<u32>
§ie: Option<u32>
§ios_saf: Option<u32>
§opera: Option<u32>
§safari: Option<u32>
§samsung: Option<u32>
Implementations§
source§impl Browsers
impl Browsers
sourcepub fn from_browserslist<S: AsRef<str>, I: IntoIterator<Item = S>>(
query: I
) -> Result<Option<Browsers>, Error>
Available on crate feature browserslist
only.
pub fn from_browserslist<S: AsRef<str>, I: IntoIterator<Item = S>>( query: I ) -> Result<Option<Browsers>, Error>
browserslist
only.Parses a list of browserslist queries into Lightning CSS targets.
sourcepub fn load_browserslist() -> Result<Option<Browsers>, Error>
Available on crate feature browserslist
only.
pub fn load_browserslist() -> Result<Option<Browsers>, Error>
browserslist
only.Finds browserslist configuration, selects queries by environment and loads the resulting queries into LightningCSS targets.
Configuration resolution is modeled after the original browserslist
nodeJS package.
The configuration is resolved in the following order:
- If a
BROWSERSLIST
environment variable is present, then load targets from its value. This is analog to the--targets
CLI option. Example:BROWSERSLIST="firefox ESR" lightningcss [OPTIONS] <INPUT_FILE>
- If a
BROWSERSLIST_CONFIG
environment variable is present, then resolve the file at the provided path. Then parse and use targets frompackage.json
or any browserslist configuration file pointed to by the environment variable. Example:BROWSERSLIST_CONFIG="../config/browserslist" lightningcss [OPTIONS] <INPUT_FILE>
- If none of the above apply, then find, parse and use targets from the first
browserslist
,.browserslistrc
orpackage.json
configuration file in any parent directory.
When using parsed configuration from browserslist
, .browserslistrc
or package.json
configuration files,
the environment determined by:
- the
BROWSERSLIST_ENV
environment variable if present, - otherwise the
NODE_ENV
environment varialbe if present, - otherwise
production
is used.
If no targets are found for the resulting environment, then the defaults
configuration section is used.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Browsers
impl<'de> Deserialize<'de> for Browsers
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for Browsers
Auto Trait Implementations§
impl RefUnwindSafe for Browsers
impl Send for Browsers
impl Sync for Browsers
impl Unpin for Browsers
impl UnwindSafe for Browsers
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
§impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere W: DeserializeWith<F, T, D>, D: Fallible + ?Sized, F: ?Sized,
§fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D ) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer