File tree 3 files changed +15
-3
lines changed
src/tools/rust-analyzer/crates/proc-macro-srv/src/server_impl
3 files changed +15
-3
lines changed Original file line number Diff line number Diff line change @@ -142,7 +142,13 @@ impl server::TokenStream for RaSpanServer {
142
142
stream. is_empty ( )
143
143
}
144
144
fn from_str ( & mut self , src : & str ) -> Self :: TokenStream {
145
- Self :: TokenStream :: from_str ( src, self . call_site ) . expect ( "cannot parse string" )
145
+ Self :: TokenStream :: from_str ( src, self . call_site ) . unwrap_or_else ( |e| {
146
+ Self :: TokenStream :: from_str (
147
+ & format ! ( "compile_error!(\" failed to parse str to token stream: {e}\" )" ) ,
148
+ self . call_site ,
149
+ )
150
+ . unwrap ( )
151
+ } )
146
152
}
147
153
fn to_string ( & mut self , stream : & Self :: TokenStream ) -> String {
148
154
stream. to_string ( )
Original file line number Diff line number Diff line change @@ -131,7 +131,13 @@ impl server::TokenStream for TokenIdServer {
131
131
stream. is_empty ( )
132
132
}
133
133
fn from_str ( & mut self , src : & str ) -> Self :: TokenStream {
134
- Self :: TokenStream :: from_str ( src, self . call_site ) . expect ( "cannot parse string" )
134
+ Self :: TokenStream :: from_str ( src, self . call_site ) . unwrap_or_else ( |e| {
135
+ Self :: TokenStream :: from_str (
136
+ & format ! ( "compile_error!(\" failed to parse str to token stream: {e}\" )" ) ,
137
+ self . call_site ,
138
+ )
139
+ . unwrap ( )
140
+ } )
135
141
}
136
142
fn to_string ( & mut self , stream : & Self :: TokenStream ) -> String {
137
143
stream. to_string ( )
Original file line number Diff line number Diff line change @@ -131,7 +131,7 @@ pub(super) mod token_stream {
131
131
call_site,
132
132
src,
133
133
)
134
- . ok_or ( "lexing error" ) ?;
134
+ . ok_or_else ( || format ! ( "lexing error: {src}" ) ) ?;
135
135
136
136
Ok ( TokenStream :: with_subtree ( subtree) )
137
137
}
You can’t perform that action at this time.
0 commit comments