mirror of
https://github.com/rust-lang/rust-analyzer
synced 2025-01-14 14:13:58 +00:00
Add eager-expand comment
This commit is contained in:
parent
c89fd01739
commit
874df3bffa
3 changed files with 13 additions and 4 deletions
|
@ -776,7 +776,10 @@ fn quote_expand(
|
|||
_db: &dyn ExpandDatabase,
|
||||
_arg_id: MacroCallId,
|
||||
_tt: &tt::Subtree,
|
||||
_span: SpanData,
|
||||
span: SpanData,
|
||||
) -> ExpandResult<tt::Subtree> {
|
||||
ExpandResult::only_err(ExpandError::other("quote! is not implemented"))
|
||||
ExpandResult::new(
|
||||
tt::Subtree::empty(tt::DelimSpan { open: span, close: span }),
|
||||
ExpandError::other("quote! is not implemented"),
|
||||
)
|
||||
}
|
||||
|
|
|
@ -1165,8 +1165,9 @@ fn resolve_hir_path_qualifier(
|
|||
(|| {
|
||||
let (ty, unresolved) = match path.type_anchor() {
|
||||
Some(type_ref) => {
|
||||
let (_, res) = TyLoweringContext::new(db, resolver, resolver.module().into())
|
||||
.lower_ty_ext(type_ref);
|
||||
let (_, res) =
|
||||
TyLoweringContext::new_maybe_unowned(db, resolver, resolver.type_owner())
|
||||
.lower_ty_ext(type_ref);
|
||||
res.map(|ty_ns| (ty_ns, path.segments().first()))
|
||||
}
|
||||
None => {
|
||||
|
|
|
@ -143,6 +143,11 @@ impl server::TokenStream for RaSpanServer {
|
|||
}
|
||||
|
||||
fn expand_expr(&mut self, self_: &Self::TokenStream) -> Result<Self::TokenStream, ()> {
|
||||
// FIXME: requires db, more importantly this requires name resolution so we would need to
|
||||
// eagerly expand this proc-macro, but we can't know that this proc-macro is eager until we
|
||||
// expand it ...
|
||||
// This calls for some kind of marker that a proc-macro wants to access this eager API,
|
||||
// otherwise we need to treat every proc-macro eagerly / or not support this.
|
||||
Ok(self_.clone())
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue