Lines Matching refs:Span
261 pub(crate) fn span(&self) -> Span {
263 LexError::Compiler(_) | LexError::CompilerPanic => Span::call_site(),
264 LexError::Fallback(e) => Span::Fallback(e.span()),
343 o.set_span(crate::Span::_new(Span::Compiler(tt.span())));
399 pub(crate) enum Span {
400 Compiler(proc_macro::Span),
401 Fallback(fallback::Span),
404 impl Span {
407 Span::Compiler(proc_macro::Span::call_site())
409 Span::Fallback(fallback::Span::call_site())
415 Span::Compiler(proc_macro::Span::mixed_site())
417 Span::Fallback(fallback::Span::mixed_site())
424 Span::Compiler(proc_macro::Span::def_site())
426 Span::Fallback(fallback::Span::def_site())
430 pub fn resolved_at(&self, other: Span) -> Span {
432 (Span::Compiler(a), Span::Compiler(b)) => Span::Compiler(a.resolved_at(b)),
433 (Span::Fallback(a), Span::Fallback(b)) => Span::Fallback(a.resolved_at(b)),
434 (Span::Compiler(_), Span::Fallback(_)) => mismatch(line!()),
435 (Span::Fallback(_), Span::Compiler(_)) => mismatch(line!()),
439 pub fn located_at(&self, other: Span) -> Span {
441 (Span::Compiler(a), Span::Compiler(b)) => Span::Compiler(a.located_at(b)),
442 (Span::Fallback(a), Span::Fallback(b)) => Span::Fallback(a.located_at(b)),
443 (Span::Compiler(_), Span::Fallback(_)) => mismatch(line!()),
444 (Span::Fallback(_), Span::Compiler(_)) => mismatch(line!()),
448 pub fn unwrap(self) -> proc_macro::Span {
450 Span::Compiler(s) => s,
451 Span::Fallback(_) => panic!("proc_macro::Span is only available in procedural macros"),
458 Span::Compiler(s) => SourceFile::nightly(s.source_file()),
459 Span::Fallback(s) => SourceFile::Fallback(s.source_file()),
466 Span::Compiler(_) => LineColumn { line: 0, column: 0 },
467 Span::Fallback(s) => s.start(),
474 Span::Compiler(_) => LineColumn { line: 0, column: 0 },
475 Span::Fallback(s) => s.end(),
479 pub fn join(&self, other: Span) -> Option<Span> {
482 (Span::Compiler(a), Span::Compiler(b)) => Span::Compiler(a.join(b)?),
483 (Span::Fallback(a), Span::Fallback(b)) => Span::Fallback(a.join(b)?),
490 pub fn eq(&self, other: &Span) -> bool {
492 (Span::Compiler(a), Span::Compiler(b)) => a.eq(b),
493 (Span::Fallback(a), Span::Fallback(b)) => a.eq(b),
501 Span::Compiler(s) => s.source_text(),
503 Span::Compiler(_) => None,
504 Span::Fallback(s) => s.source_text(),
508 fn unwrap_nightly(self) -> proc_macro::Span {
510 Span::Compiler(s) => s,
511 Span::Fallback(_) => mismatch(line!()),
516 impl From<proc_macro::Span> for crate::Span {
517 fn from(proc_span: proc_macro::Span) -> Self {
518 crate::Span::_new(Span::Compiler(proc_span))
522 impl From<fallback::Span> for Span {
523 fn from(inner: fallback::Span) -> Self {
524 Span::Fallback(inner)
528 impl Debug for Span {
531 Span::Compiler(s) => Debug::fmt(s, f),
532 Span::Fallback(s) => Debug::fmt(s, f),
537 pub(crate) fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) {
539 Span::Compiler(s) => {
542 Span::Fallback(s) => fallback::debug_span_field_if_nontrivial(debug, s),
589 pub fn span(&self) -> Span {
591 Group::Compiler(g) => Span::Compiler(g.span()),
592 Group::Fallback(g) => Span::Fallback(g.span()),
596 pub fn span_open(&self) -> Span {
598 Group::Compiler(g) => Span::Compiler(g.span_open()),
599 Group::Fallback(g) => Span::Fallback(g.span_open()),
603 pub fn span_close(&self) -> Span {
605 Group::Compiler(g) => Span::Compiler(g.span_close()),
606 Group::Fallback(g) => Span::Fallback(g.span_close()),
610 pub fn set_span(&mut self, span: Span) {
612 (Group::Compiler(g), Span::Compiler(s)) => g.set_span(s),
613 (Group::Fallback(g), Span::Fallback(s)) => g.set_span(s),
614 (Group::Compiler(_), Span::Fallback(_)) => mismatch(line!()),
615 (Group::Fallback(_), Span::Compiler(_)) => mismatch(line!()),
659 pub fn new_checked(string: &str, span: Span) -> Self {
661 Span::Compiler(s) => Ident::Compiler(proc_macro::Ident::new(string, s)),
662 Span::Fallback(s) => Ident::Fallback(fallback::Ident::new_checked(string, s)),
666 pub fn new_unchecked(string: &str, span: fallback::Span) -> Self {
671 pub fn new_raw_checked(string: &str, span: Span) -> Self {
673 Span::Compiler(s) => Ident::Compiler(proc_macro::Ident::new_raw(string, s)),
674 Span::Fallback(s) => Ident::Fallback(fallback::Ident::new_raw_checked(string, s)),
678 pub fn new_raw_unchecked(string: &str, span: fallback::Span) -> Self {
682 pub fn span(&self) -> Span {
684 Ident::Compiler(t) => Span::Compiler(t.span()),
685 Ident::Fallback(t) => Span::Fallback(t.span()),
689 pub fn set_span(&mut self, span: Span) {
691 (Ident::Compiler(t), Span::Compiler(s)) => t.set_span(s),
692 (Ident::Fallback(t), Span::Fallback(s)) => t.set_span(s),
693 (Ident::Compiler(_), Span::Fallback(_)) => mismatch(line!()),
694 (Ident::Fallback(_), Span::Compiler(_)) => mismatch(line!()),
860 pub fn span(&self) -> Span {
862 Literal::Compiler(lit) => Span::Compiler(lit.span()),
863 Literal::Fallback(lit) => Span::Fallback(lit.span()),
867 pub fn set_span(&mut self, span: Span) {
869 (Literal::Compiler(lit), Span::Compiler(s)) => lit.set_span(s),
870 (Literal::Fallback(lit), Span::Fallback(s)) => lit.set_span(s),
871 (Literal::Compiler(_), Span::Fallback(_)) => mismatch(line!()),
872 (Literal::Fallback(_), Span::Compiler(_)) => mismatch(line!()),
876 pub fn subspan<R: RangeBounds<usize>>(&self, range: R) -> Option<Span> {
879 Literal::Compiler(lit) => lit.subspan(range).map(Span::Compiler),
882 Literal::Fallback(lit) => lit.subspan(range).map(Span::Fallback),