pub struct SetWriter<'caller, W: Warning> { /* private fields */ }Expand description
A Display object for writing a set of warnings.
The warnings set is formatted as a tree with element paths on the first level and a list of warning ids on the second.
$.path.to.json[0].field:
- list_of_warning_ids
- next_warning_id
$.next.path.to[1].json.field
- list_of_warning_idsImplementations§
Source§impl<'caller, W: Warning> SetWriter<'caller, W>
impl<'caller, W: Warning> SetWriter<'caller, W>
Sourcepub fn new(warnings: &'caller Set<W>) -> Self
pub fn new(warnings: &'caller Set<W>) -> Self
Create a new SetWriter with a default warning id indent of " - ".
Examples found in repository?
More examples
examples/lint_tariff.rs (line 30)
22fn print_schema_warnings(warnings: &warning::Set<schema::Warning>) {
23 if warnings.is_empty() {
24 return;
25 }
26
27 eprintln!(
28 "WARN: {} schema warnings from the tariff:\n {}",
29 warnings.len_warnings(),
30 warning::SetWriter::new(warnings)
31 );
32}
33
34/// Print `lint::tariff::Warning`s to `stderr`.
35fn print_lint_warnings(warnings: &warning::Set<lint::tariff::Warning>) {
36 if warnings.is_empty() {
37 return;
38 }
39
40 eprintln!(
41 "WARN: {} warnings from the linting:\n {}",
42 warnings.len_warnings(),
43 warning::SetWriter::new(warnings)
44 );
45}examples/price_cdr_with_unknown_version.rs (line 98)
85fn print_timezone_warnings(warnings: &warning::Set<timezone::Warning>) {
86 if warnings.is_empty() {
87 return;
88 }
89
90 eprintln!(
91 "WARN: {} warnings from the timezone search",
92 warnings.len_warnings()
93 );
94
95 eprintln!(
96 "WARN: {} warnings from the timezone search:\n {}",
97 warnings.len_warnings(),
98 warning::SetWriter::new(warnings)
99 );
100}
101
102/// Print the `price::Warning` that halted the process to `stderr`.
103fn print_pricing_error(error: &warning::Error<price::Warning>) {
104 eprintln!(
105 "ERR: Unable to price CDR due to error at path `{}`: {}",
106 error.element().path,
107 error.warning()
108 );
109}
110
111/// Print the `price::Warning`s to `stderr`.
112fn print_pricing_warnings(warnings: &warning::Set<price::Warning>) {
113 if warnings.is_empty() {
114 return;
115 }
116
117 eprintln!(
118 "WARN: {} warnings from the linting:\n {}",
119 warnings.len_warnings(),
120 warning::SetWriter::new(warnings)
121 );
122}Sourcepub fn with_indent(warnings: &'caller Set<W>, indent: &'caller str) -> Self
pub fn with_indent(warnings: &'caller Set<W>, indent: &'caller str) -> Self
Create a new SetWriter with a custom warning id indent.
Trait Implementations§
Auto Trait Implementations§
impl<'caller, W> Freeze for SetWriter<'caller, W>
impl<'caller, W> RefUnwindSafe for SetWriter<'caller, W>where
W: RefUnwindSafe,
impl<'caller, W> Send for SetWriter<'caller, W>
impl<'caller, W> Sync for SetWriter<'caller, W>
impl<'caller, W> Unpin for SetWriter<'caller, W>
impl<'caller, W> UnsafeUnpin for SetWriter<'caller, W>
impl<'caller, W> UnwindSafe for SetWriter<'caller, W>where
W: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more