Skip to content

Commit

Permalink
Add blank lines between methods in proc_macro_server.rs.
Browse files Browse the repository at this point in the history
Because that's the standard way of doing it.
  • Loading branch information
nnethercote committed Jun 20, 2022
1 parent 2a5487a commit 69f45b7
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions compiler/rustc_expand/src/proc_macro_server.rs
Original file line number Diff line number Diff line change
Expand Up @@ -329,6 +329,7 @@ impl Ident {
sess.symbol_gallery.insert(sym, span);
Ident { sym, is_raw, span }
}

fn dollar_crate(span: Span) -> Ident {
// `$crate` is accepted as an ident only if it comes from the compiler.
Ident { sym: kw::DollarCrate, is_raw: false, span }
Expand Down Expand Up @@ -403,6 +404,7 @@ impl server::TokenStream for Rustc<'_, '_> {
fn is_empty(&mut self, stream: &Self::TokenStream) -> bool {
stream.is_empty()
}

fn from_str(&mut self, src: &str) -> Self::TokenStream {
parse_stream_from_source_str(
FileName::proc_macro_source_code(src),
Expand All @@ -411,9 +413,11 @@ impl server::TokenStream for Rustc<'_, '_> {
Some(self.call_site),
)
}

fn to_string(&mut self, stream: &Self::TokenStream) -> String {
pprust::tts_to_string(stream)
}

fn expand_expr(&mut self, stream: &Self::TokenStream) -> Result<Self::TokenStream, ()> {
// Parse the expression from our tokenstream.
let expr: PResult<'_, _> = try {
Expand Down Expand Up @@ -464,12 +468,14 @@ impl server::TokenStream for Rustc<'_, '_> {
_ => Err(()),
}
}

fn from_token_tree(
&mut self,
tree: TokenTree<Self::Group, Self::Punct, Self::Ident, Self::Literal>,
) -> Self::TokenStream {
tree.to_internal()
}

fn concat_trees(
&mut self,
base: Option<Self::TokenStream>,
Expand All @@ -484,6 +490,7 @@ impl server::TokenStream for Rustc<'_, '_> {
}
builder.build()
}

fn concat_streams(
&mut self,
base: Option<Self::TokenStream>,
Expand All @@ -498,6 +505,7 @@ impl server::TokenStream for Rustc<'_, '_> {
}
builder.build()
}

fn into_trees(
&mut self,
stream: Self::TokenStream,
Expand Down Expand Up @@ -543,21 +551,27 @@ impl server::Group for Rustc<'_, '_> {
flatten: false,
}
}

fn delimiter(&mut self, group: &Self::Group) -> Delimiter {
group.delimiter
}

fn stream(&mut self, group: &Self::Group) -> Self::TokenStream {
group.stream.clone()
}

fn span(&mut self, group: &Self::Group) -> Self::Span {
group.span.entire()
}

fn span_open(&mut self, group: &Self::Group) -> Self::Span {
group.span.open
}

fn span_close(&mut self, group: &Self::Group) -> Self::Span {
group.span.close
}

fn set_span(&mut self, group: &mut Self::Group, span: Self::Span) {
group.span = DelimSpan::from_single(span);
}
Expand All @@ -567,15 +581,19 @@ impl server::Punct for Rustc<'_, '_> {
fn new(&mut self, ch: char, spacing: Spacing) -> Self::Punct {
Punct::new(ch, spacing == Spacing::Joint, server::Span::call_site(self))
}

fn as_char(&mut self, punct: Self::Punct) -> char {
punct.ch
}

fn spacing(&mut self, punct: Self::Punct) -> Spacing {
if punct.joint { Spacing::Joint } else { Spacing::Alone }
}

fn span(&mut self, punct: Self::Punct) -> Self::Span {
punct.span
}

fn with_span(&mut self, punct: Self::Punct, span: Self::Span) -> Self::Punct {
Punct { span, ..punct }
}
Expand All @@ -585,9 +603,11 @@ impl server::Ident for Rustc<'_, '_> {
fn new(&mut self, string: &str, span: Self::Span, is_raw: bool) -> Self::Ident {
Ident::new(self.sess(), Symbol::intern(string), is_raw, span)
}

fn span(&mut self, ident: Self::Ident) -> Self::Span {
ident.span
}

fn with_span(&mut self, ident: Self::Ident, span: Self::Span) -> Self::Ident {
Ident { span, ..ident }
}
Expand Down Expand Up @@ -639,45 +659,57 @@ impl server::Literal for Rustc<'_, '_> {

Ok(Literal { lit, span: self.call_site })
}

fn to_string(&mut self, literal: &Self::Literal) -> String {
literal.lit.to_string()
}

fn debug_kind(&mut self, literal: &Self::Literal) -> String {
format!("{:?}", literal.lit.kind)
}

fn symbol(&mut self, literal: &Self::Literal) -> String {
literal.lit.symbol.to_string()
}

fn suffix(&mut self, literal: &Self::Literal) -> Option<String> {
literal.lit.suffix.as_ref().map(Symbol::to_string)
}

fn integer(&mut self, n: &str) -> Self::Literal {
self.lit(token::Integer, Symbol::intern(n), None)
}

fn typed_integer(&mut self, n: &str, kind: &str) -> Self::Literal {
self.lit(token::Integer, Symbol::intern(n), Some(Symbol::intern(kind)))
}

fn float(&mut self, n: &str) -> Self::Literal {
self.lit(token::Float, Symbol::intern(n), None)
}

fn f32(&mut self, n: &str) -> Self::Literal {
self.lit(token::Float, Symbol::intern(n), Some(sym::f32))
}

fn f64(&mut self, n: &str) -> Self::Literal {
self.lit(token::Float, Symbol::intern(n), Some(sym::f64))
}

fn string(&mut self, string: &str) -> Self::Literal {
let quoted = format!("{:?}", string);
assert!(quoted.starts_with('"') && quoted.ends_with('"'));
let symbol = &quoted[1..quoted.len() - 1];
self.lit(token::Str, Symbol::intern(symbol), None)
}

fn character(&mut self, ch: char) -> Self::Literal {
let quoted = format!("{:?}", ch);
assert!(quoted.starts_with('\'') && quoted.ends_with('\''));
let symbol = &quoted[1..quoted.len() - 1];
self.lit(token::Char, Symbol::intern(symbol), None)
}

fn byte_string(&mut self, bytes: &[u8]) -> Self::Literal {
let string = bytes
.iter()
Expand All @@ -687,12 +719,15 @@ impl server::Literal for Rustc<'_, '_> {
.collect::<String>();
self.lit(token::ByteStr, Symbol::intern(&string), None)
}

fn span(&mut self, literal: &Self::Literal) -> Self::Span {
literal.span
}

fn set_span(&mut self, literal: &mut Self::Literal, span: Self::Span) {
literal.span = span;
}

fn subspan(
&mut self,
literal: &Self::Literal,
Expand Down Expand Up @@ -735,6 +770,7 @@ impl server::SourceFile for Rustc<'_, '_> {
fn eq(&mut self, file1: &Self::SourceFile, file2: &Self::SourceFile) -> bool {
Lrc::ptr_eq(file1, file2)
}

fn path(&mut self, file: &Self::SourceFile) -> String {
match file.name {
FileName::Real(ref name) => name
Expand All @@ -746,6 +782,7 @@ impl server::SourceFile for Rustc<'_, '_> {
_ => file.name.prefer_local().to_string(),
}
}

fn is_real(&mut self, file: &Self::SourceFile) -> bool {
file.is_real_file()
}
Expand All @@ -755,6 +792,7 @@ impl server::MultiSpan for Rustc<'_, '_> {
fn new(&mut self) -> Self::MultiSpan {
vec![]
}

fn push(&mut self, spans: &mut Self::MultiSpan, span: Self::Span) {
spans.push(span)
}
Expand All @@ -766,6 +804,7 @@ impl server::Diagnostic for Rustc<'_, '_> {
diag.set_span(MultiSpan::from_spans(spans));
diag
}

fn sub(
&mut self,
diag: &mut Self::Diagnostic,
Expand All @@ -775,6 +814,7 @@ impl server::Diagnostic for Rustc<'_, '_> {
) {
diag.sub(level.to_internal(), msg, MultiSpan::from_spans(spans), None);
}

fn emit(&mut self, mut diag: Self::Diagnostic) {
self.sess().span_diagnostic.emit_diagnostic(&mut diag);
}
Expand All @@ -788,38 +828,49 @@ impl server::Span for Rustc<'_, '_> {
format!("{:?} bytes({}..{})", span.ctxt(), span.lo().0, span.hi().0)
}
}

fn def_site(&mut self) -> Self::Span {
self.def_site
}

fn call_site(&mut self) -> Self::Span {
self.call_site
}

fn mixed_site(&mut self) -> Self::Span {
self.mixed_site
}

fn source_file(&mut self, span: Self::Span) -> Self::SourceFile {
self.sess().source_map().lookup_char_pos(span.lo()).file
}

fn parent(&mut self, span: Self::Span) -> Option<Self::Span> {
span.parent_callsite()
}

fn source(&mut self, span: Self::Span) -> Self::Span {
span.source_callsite()
}

fn start(&mut self, span: Self::Span) -> LineColumn {
let loc = self.sess().source_map().lookup_char_pos(span.lo());
LineColumn { line: loc.line, column: loc.col.to_usize() }
}

fn end(&mut self, span: Self::Span) -> LineColumn {
let loc = self.sess().source_map().lookup_char_pos(span.hi());
LineColumn { line: loc.line, column: loc.col.to_usize() }
}

fn before(&mut self, span: Self::Span) -> Self::Span {
span.shrink_to_lo()
}

fn after(&mut self, span: Self::Span) -> Self::Span {
span.shrink_to_hi()
}

fn join(&mut self, first: Self::Span, second: Self::Span) -> Option<Self::Span> {
let self_loc = self.sess().source_map().lookup_char_pos(first.lo());
let other_loc = self.sess().source_map().lookup_char_pos(second.lo());
Expand All @@ -830,9 +881,11 @@ impl server::Span for Rustc<'_, '_> {

Some(first.to(second))
}

fn resolved_at(&mut self, span: Self::Span, at: Self::Span) -> Self::Span {
span.with_ctxt(at.ctxt())
}

fn source_text(&mut self, span: Self::Span) -> Option<String> {
self.sess().source_map().span_to_snippet(span).ok()
}
Expand Down Expand Up @@ -863,6 +916,7 @@ impl server::Span for Rustc<'_, '_> {
fn save_span(&mut self, span: Self::Span) -> usize {
self.sess().save_proc_macro_span(span)
}

fn recover_proc_macro_span(&mut self, id: usize) -> Self::Span {
let (resolver, krate, def_site) = (&*self.ecx.resolver, self.krate, self.def_site);
*self.rebased_spans.entry(id).or_insert_with(|| {
Expand Down

0 comments on commit 69f45b7

Please sign in to comment.