turbopack_core/issue/
code_gen.rs1use turbo_tasks::{ResolvedVc, Vc};
2use turbo_tasks_fs::FileSystemPath;
3
4use super::{
5 Issue, IssueSeverity, IssueSource, IssueStage, OptionIssueSource, OptionStyledString,
6 StyledString,
7};
8
9#[turbo_tasks::value(shared)]
10pub struct CodeGenerationIssue {
11 pub severity: IssueSeverity,
12 pub path: FileSystemPath,
13 pub title: ResolvedVc<StyledString>,
14 pub message: ResolvedVc<StyledString>,
15 pub source: Option<IssueSource>,
17}
18
19#[turbo_tasks::value_impl]
20impl Issue for CodeGenerationIssue {
21 fn severity(&self) -> IssueSeverity {
22 self.severity
23 }
24
25 #[turbo_tasks::function]
26 fn title(&self) -> Vc<StyledString> {
27 *self.title
28 }
29
30 #[turbo_tasks::function]
31 fn stage(&self) -> Vc<IssueStage> {
32 IssueStage::CodeGen.cell()
33 }
34
35 #[turbo_tasks::function]
36 fn file_path(&self) -> Vc<FileSystemPath> {
37 self.path.clone().cell()
38 }
39
40 #[turbo_tasks::function]
41 fn description(&self) -> Vc<OptionStyledString> {
42 Vc::cell(Some(self.message))
43 }
44
45 #[turbo_tasks::function]
46 fn source(&self) -> Vc<OptionIssueSource> {
47 Vc::cell(self.source)
48 }
49}