MCPcopy Create free account
hub / github.com/PRQL/prql / composed

Method composed

prqlc/prqlc/src/error_message.rs:137–162  ·  view source on GitHub ↗

Computes message location and builds the pretty display.

(mut self, sources: &SourceTree)

Source from the content-addressed store, hash-verified

135
136 /// Computes message location and builds the pretty display.
137 pub fn composed(mut self, sources: &SourceTree) -> Self {
138 let mut cache = FileTreeCache::new(sources);
139
140 for e in &mut self.inner {
141 let Some(span) = e.span else {
142 continue;
143 };
144 let Some(source_path) = sources.source_ids.get(&span.source_id) else {
145 continue;
146 };
147
148 let Ok(source) = cache.fetch(source_path) else {
149 continue;
150 };
151 e.location = e.compose_location(source);
152
153 assert!(
154 e.location.is_some(),
155 "span {:?} is out of bounds of the source (len = {})",
156 e.span,
157 source.len()
158 );
159 e.display = e.compose_display(source_path.clone(), &mut cache);
160 }
161 self
162 }
163}
164
165impl ErrorMessage {

Callers 5

compileFunction · 0.80
compileFunction · 0.80
compileFunction · 0.80
prql_to_pl_treeFunction · 0.80
executeMethod · 0.80

Calls 4

fetchMethod · 0.80
compose_locationMethod · 0.80
compose_displayMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected