Underscore => true,
Tilde => true,
Literal(_, _) => true,
- Pound => true,
- At => true,
Not => true,
BinOp(Minus) => true,
BinOp(Star) => true,
BinOp(And) => true,
BinOp(Or) => true, // in lambda syntax
OrOr => true, // in lambda syntax
+ AndAnd => true, // double borrow
+ DotDot => true, // range notation
ModSep => true,
Interpolated(NtExpr(..)) => true,
Interpolated(NtIdent(..)) => true,
NtTT(P<ast::TokenTree>), // needs P'ed to break a circularity
}
-impl fmt::Show for Nonterminal {
+impl fmt::Debug for Nonterminal {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match *self {
NtItem(..) => f.pad("NtItem(..)"),
$(init_vec.push($si_str);)*
$(init_vec.push($sk_str);)*
$(init_vec.push($rk_str);)*
- interner::StrInterner::prefill(init_vec.index(&FullRange))
+ interner::StrInterner::prefill(&init_vec[])
}
}}
#[inline]
pub fn get<'a>(&'a self) -> &'a str {
- self.string.index(&FullRange)
+ &self.string[]
}
}
}
}
-impl fmt::Show for InternedString {
+impl fmt::Debug for InternedString {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- fmt::String::fmt(self, f)
+ fmt::Debug::fmt(&self.string[], f)
}
}
-impl fmt::String for InternedString {
+impl fmt::Display for InternedString {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- write!(f, "{}", self.string.index(&FullRange))
+ fmt::Display::fmt(&self.string[], f)
}
}
impl<'a> PartialEq<&'a str> for InternedString {
#[inline(always)]
fn eq(&self, other: & &'a str) -> bool {
- PartialEq::eq(self.string.index(&FullRange), *other)
+ PartialEq::eq(&self.string[], *other)
}
#[inline(always)]
fn ne(&self, other: & &'a str) -> bool {
- PartialEq::ne(self.string.index(&FullRange), *other)
+ PartialEq::ne(&self.string[], *other)
}
}
impl<'a> PartialEq<InternedString > for &'a str {
#[inline(always)]
fn eq(&self, other: &InternedString) -> bool {
- PartialEq::eq(*self, other.string.index(&FullRange))
+ PartialEq::eq(*self, &other.string[])
}
#[inline(always)]
fn ne(&self, other: &InternedString) -> bool {
- PartialEq::ne(*self, other.string.index(&FullRange))
+ PartialEq::ne(*self, &other.string[])
}
}
impl Decodable for InternedString {
fn decode<D: Decoder>(d: &mut D) -> Result<InternedString, D::Error> {
- Ok(get_name(get_ident_interner().intern(try!(d.read_str()).index(&FullRange))))
+ Ok(get_name(get_ident_interner().intern(&try!(d.read_str())[])))
}
}
impl Encodable for InternedString {
fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error> {
- s.emit_str(self.string.index(&FullRange))
+ s.emit_str(&self.string[])
}
}