@@ -271,30 +271,29 @@ atPoint IdeOptions{} (HAR _ (hf :: HieASTs a) _rf _ kind) (DKMap dm km) pos = li
271
271
renderEvidenceTree (T. Node (EvidenceInfo {evidenceDetails= Just (EvLetBind _,_,_)}) [x])
272
272
= renderEvidenceTree x
273
273
renderEvidenceTree (T. Node (EvidenceInfo {evidenceDetails= Just (EvLetBind _,_,_), .. }) xs)
274
- = hang (text " - Evidence of constraint `" O. <> expandType evidenceType O. <> " `" ) 2 $
275
- vcat $ text " depending on:" : map renderEvidenceTree' xs
276
- renderEvidenceTree x = renderEvidenceTree' x
274
+ = hang (text " Evidence of constraint `" O. <> expandType evidenceType O. <> " `" ) 2 $
275
+ vcat $ text " constructed using:" : map renderEvidenceTree' xs
276
+ renderEvidenceTree (T. Node (EvidenceInfo {.. }) _)
277
+ = hang (text " Evidence of constraint `" O. <> expandType evidenceType O. <> " `" ) 2 $
278
+ vcat $ printDets evidenceSpan evidenceDetails : map (text . T. unpack) (definedAt evidenceVar)
277
279
278
280
-- renderEvidenceTree' skips let bound evidence variables and prints the children directly
279
281
renderEvidenceTree' (T. Node (EvidenceInfo {evidenceDetails= Just (EvLetBind _,_,_)}) xs)
280
282
= vcat (map renderEvidenceTree' xs)
281
- renderEvidenceTree' (T. Node (EvidenceInfo {.. }) xs)
282
- = hang (text " - Evidence of constraint `" O. <> expandType evidenceType O. <> " `" ) 2 $
283
- vcat $ map (text . T. unpack) (definedAt evidenceVar)
284
- ++ [printDets evidenceSpan evidenceDetails (null xs)]
285
- ++ map renderEvidenceTree' xs
286
-
287
- printDets :: RealSrcSpan -> Maybe (EvVarSource , Scope , Maybe Span ) -> Bool -> SDoc
288
- printDets _ Nothing True = text " "
289
- printDets _ Nothing False = text " constructed using:"
290
- printDets ospn (Just (src,_,mspn)) _ = pprSrc
283
+ renderEvidenceTree' (T. Node (EvidenceInfo {.. }) _)
284
+ = hang (text " - `" O. <> expandType evidenceType O. <> " `" ) 2 $
285
+ vcat $ printDets evidenceSpan evidenceDetails : map (text . T. unpack) (definedAt evidenceVar)
286
+
287
+ printDets :: RealSrcSpan -> Maybe (EvVarSource , Scope , Maybe Span ) -> SDoc
288
+ printDets _ Nothing = text " using an external instance"
289
+ printDets ospn (Just (src,_,mspn)) = pprSrc
291
290
$$ text " at" <+> ppr spn
292
291
where
293
292
-- Use the bind span if we have one, else use the occurence span
294
293
spn = fromMaybe ospn mspn
295
294
pprSrc = case src of
296
295
-- Users don't know what HsWrappers are
297
- EvWrapperBind -> " bound by type signature or pattern "
296
+ EvWrapperBind -> " bound by a context "
298
297
_ -> ppr src
299
298
#endif
300
299
0 commit comments