add ingested file category for error messages

This commit is contained in:
Brendan Hansknecht 2023-04-03 18:04:43 -07:00
parent d42aa43b41
commit 7079361841
No known key found for this signature in database
GPG key ID: 0EA784685083E75B
3 changed files with 8 additions and 13 deletions

View file

@ -302,19 +302,7 @@ impl Expr {
Self::Int(..) => Category::Int, Self::Int(..) => Category::Int,
Self::Float(..) => Category::Frac, Self::Float(..) => Category::Frac,
Self::Str(..) => Category::Str, Self::Str(..) => Category::Str,
Self::IngestedFile(_, anno) => { Self::IngestedFile(..) => Category::IngestedFile,
dbg!(&anno);
todo!()
// if let Type::Apply(0, 1, 2) = anno.typ {
// Category::Str
// } else if let Type::Apply(_, _, _) = anno.typ {
// Category::List
// } else {
// todo!(
// "Not sure how we should handle other types here that are probably invalid"
// )
// }
}
Self::SingleQuote(..) => Category::Character, Self::SingleQuote(..) => Category::Character,
Self::List { .. } => Category::List, Self::List { .. } => Category::List,
&Self::Var(sym, _) => Category::Lookup(sym), &Self::Var(sym, _) => Category::Lookup(sym),

View file

@ -3781,6 +3781,7 @@ pub enum Category {
List, List,
Str, Str,
Character, Character,
IngestedFile,
// records // records
Record, Record,

View file

@ -1655,6 +1655,12 @@ fn format_category<'b>(
alloc.concat([this_is, alloc.text(" a Unicode scalar value")]), alloc.concat([this_is, alloc.text(" a Unicode scalar value")]),
alloc.text(" of type:"), alloc.text(" of type:"),
), ),
IngestedFile => (
// TODO: is this what we actually want for the error message here.
// Should we somehow get the file name piped to here or type annotation?
alloc.concat([this_is, alloc.text(" an ingested file")]),
alloc.text(" of type:"),
),
Lambda => ( Lambda => (
alloc.concat([this_is, alloc.text(" an anonymous function")]), alloc.concat([this_is, alloc.text(" an anonymous function")]),
alloc.text(" of type:"), alloc.text(" of type:"),