1#[cfg(not(feature = "lt2022_1"))]
2use super::IdentityChangeListMode;
3use super::{
4 ArbitraryJobStatus, Change, ForceOperationMode, OriginalChangeListMode, StdinMode, StdoutMode,
5 Unselected, UpdateOperationMode,
6};
7
8impl<O, C> Change<StdoutMode, O, C, Unselected> {
13 pub fn arbitrary_job_status(self) -> Change<StdoutMode, O, C, ArbitraryJobStatus> {
15 Change {
16 bin: self.bin,
17 global_opts: self.global_opts,
18 mode: self.mode,
19 permission_mode: self.permission_mode,
20 changelist_mode: self.changelist_mode,
21 job_status_mode: ArbitraryJobStatus,
22 }
23 }
24}
25
26impl<C, S> Change<StdoutMode, Unselected, C, S> {
27 pub fn force(self) -> Change<StdoutMode, ForceOperationMode, C, S> {
29 Change {
30 bin: self.bin,
31 global_opts: self.global_opts,
32 mode: self.mode,
33 permission_mode: ForceOperationMode,
34 changelist_mode: self.changelist_mode,
35 job_status_mode: self.job_status_mode,
36 }
37 }
38}
39
40impl<O, S> Change<StdoutMode, O, Unselected, S> {
41 pub fn original(self) -> Change<StdoutMode, O, OriginalChangeListMode, S> {
44 Change {
45 bin: self.bin,
46 global_opts: self.global_opts,
47 mode: self.mode,
48 permission_mode: self.permission_mode,
49 changelist_mode: OriginalChangeListMode,
50 job_status_mode: self.job_status_mode,
51 }
52 }
53
54 #[cfg(not(feature = "lt2022_1"))]
56 pub fn identity(self) -> Change<StdoutMode, O, IdentityChangeListMode, S> {
57 Change {
58 bin: self.bin,
59 global_opts: self.global_opts,
60 mode: self.mode,
61 permission_mode: self.permission_mode,
62 changelist_mode: IdentityChangeListMode,
63 job_status_mode: self.job_status_mode,
64 }
65 }
66}
67
68impl<O> Change<StdinMode, O, Unselected, Unselected> {
73 pub fn arbitrary_job_status(self) -> Change<StdinMode, O, Unselected, ArbitraryJobStatus> {
75 Change {
76 bin: self.bin,
77 global_opts: self.global_opts,
78 mode: self.mode,
79 permission_mode: self.permission_mode,
80 changelist_mode: Unselected,
81 job_status_mode: ArbitraryJobStatus,
82 }
83 }
84}
85
86impl<S> Change<StdinMode, Unselected, Unselected, S> {
87 pub fn force(self) -> Change<StdinMode, ForceOperationMode, Unselected, S> {
89 Change {
90 bin: self.bin,
91 global_opts: self.global_opts,
92 mode: self.mode,
93 permission_mode: ForceOperationMode,
94 changelist_mode: Unselected,
95 job_status_mode: self.job_status_mode,
96 }
97 }
98
99 pub fn update(self) -> Change<StdinMode, UpdateOperationMode, Unselected, S> {
101 Change {
102 bin: self.bin,
103 global_opts: self.global_opts,
104 mode: self.mode,
105 permission_mode: UpdateOperationMode,
106 changelist_mode: Unselected,
107 job_status_mode: self.job_status_mode,
108 }
109 }
110}