1#![feature(min_specialization)]
2#![feature(arbitrary_self_types)]
3#![feature(arbitrary_self_types_pointers)]
4
5mod asset;
6pub mod chunk;
7mod code_gen;
8pub mod embed;
9mod lifetime_util;
10mod module_asset;
11pub(crate) mod process;
12pub(crate) mod references;
13
14use bincode::{Decode, Encode};
15use turbo_tasks::{NonLocalValue, TaskInput, trace::TraceRawVcs};
16
17use crate::references::import::ImportAssetReference;
18pub use crate::{asset::CssModule, module_asset::EcmascriptCssModule, process::*};
19
20#[derive(
21 PartialOrd,
22 Ord,
23 Eq,
24 PartialEq,
25 Hash,
26 Debug,
27 Copy,
28 Clone,
29 Default,
30 TaskInput,
31 TraceRawVcs,
32 NonLocalValue,
33 Encode,
34 Decode,
35)]
36pub enum CssModuleType {
37 #[default]
39 Default,
40 Module,
42}
43
44#[turbo_tasks::value(shared, serialization = "auto")]
49#[derive(PartialOrd, Ord, Hash, Copy, Clone, Debug, Default, TaskInput)]
50pub struct LightningCssFeatureFlags {
51 pub include: u32,
52 pub exclude: u32,
53}