Rollup merge of #131697 - ShE3py:rt-arg-lifetimes, r=Amanieu · qinheping/verify-rust-std@507193a (original) (raw)

`@@ -94,11 +94,11 @@ pub struct Argument<'a> {

`

94

94

`}

`

95

95

``

96

96

`#[rustc_diagnostic_item = "ArgumentMethods"]

`

97

``

`-

impl<'a> Argument<'a> {

`

``

97

`+

impl Argument<'_> {

`

98

98

`#[inline(always)]

`

99

``

`-

fn new<'b, T>(x: &'b T, f: fn(&T, &mut Formatter<'_>) -> Result) -> Argument<'b> {

`

``

99

`+

fn new<'a, T>(x: &'a T, f: fn(&T, &mut Formatter<'_>) -> Result) -> Argument<'a> {

`

100

100

`Argument {

`

101

``

`` -

// INVARIANT: this creates an ArgumentType<'b> from a &'b T and

``

``

101

`` +

// INVARIANT: this creates an ArgumentType<'a> from a &'a T and

``

102

102

`` // a fn(&T, ...), so the invariant is maintained.

``

103

103

`ty: ArgumentType::Placeholder {

`

104

104

`value: NonNull::from(x).cast(),

`

`@@ -110,43 +110,43 @@ impl<'a> Argument<'a> {

`

110

110

`}

`

111

111

``

112

112

`#[inline(always)]

`

113

``

`-

pub fn new_display<'b, T: Display>(x: &'b T) -> Argument<'b> {

`

``

113

`+

pub fn new_display<T: Display>(x: &T) -> Argument<'_> {

`

114

114

`Self::new(x, Display::fmt)

`

115

115

`}

`

116

116

`#[inline(always)]

`

117

``

`-

pub fn new_debug<'b, T: Debug>(x: &'b T) -> Argument<'b> {

`

``

117

`+

pub fn new_debug<T: Debug>(x: &T) -> Argument<'_> {

`

118

118

`Self::new(x, Debug::fmt)

`

119

119

`}

`

120

120

`#[inline(always)]

`

121

``

`-

pub fn new_debug_noop<'b, T: Debug>(x: &'b T) -> Argument<'b> {

`

``

121

`+

pub fn new_debug_noop<T: Debug>(x: &T) -> Argument<'_> {

`

122

122

`Self::new(x, |_, _| Ok(()))

`

123

123

`}

`

124

124

`#[inline(always)]

`

125

``

`-

pub fn new_octal<'b, T: Octal>(x: &'b T) -> Argument<'b> {

`

``

125

`+

pub fn new_octal<T: Octal>(x: &T) -> Argument<'_> {

`

126

126

`Self::new(x, Octal::fmt)

`

127

127

`}

`

128

128

`#[inline(always)]

`

129

``

`-

pub fn new_lower_hex<'b, T: LowerHex>(x: &'b T) -> Argument<'b> {

`

``

129

`+

pub fn new_lower_hex<T: LowerHex>(x: &T) -> Argument<'_> {

`

130

130

`Self::new(x, LowerHex::fmt)

`

131

131

`}

`

132

132

`#[inline(always)]

`

133

``

`-

pub fn new_upper_hex<'b, T: UpperHex>(x: &'b T) -> Argument<'b> {

`

``

133

`+

pub fn new_upper_hex<T: UpperHex>(x: &T) -> Argument<'_> {

`

134

134

`Self::new(x, UpperHex::fmt)

`

135

135

`}

`

136

136

`#[inline(always)]

`

137

``

`-

pub fn new_pointer<'b, T: Pointer>(x: &'b T) -> Argument<'b> {

`

``

137

`+

pub fn new_pointer<T: Pointer>(x: &T) -> Argument<'_> {

`

138

138

`Self::new(x, Pointer::fmt)

`

139

139

`}

`

140

140

`#[inline(always)]

`

141

``

`-

pub fn new_binary<'b, T: Binary>(x: &'b T) -> Argument<'b> {

`

``

141

`+

pub fn new_binary<T: Binary>(x: &T) -> Argument<'_> {

`

142

142

`Self::new(x, Binary::fmt)

`

143

143

`}

`

144

144

`#[inline(always)]

`

145

``

`-

pub fn new_lower_exp<'b, T: LowerExp>(x: &'b T) -> Argument<'b> {

`

``

145

`+

pub fn new_lower_exp<T: LowerExp>(x: &T) -> Argument<'_> {

`

146

146

`Self::new(x, LowerExp::fmt)

`

147

147

`}

`

148

148

`#[inline(always)]

`

149

``

`-

pub fn new_upper_exp<'b, T: UpperExp>(x: &'b T) -> Argument<'b> {

`

``

149

`+

pub fn new_upper_exp<T: UpperExp>(x: &T) -> Argument<'_> {

`

150

150

`Self::new(x, UpperExp::fmt)

`

151

151

`}

`

152

152

`#[inline(always)]

`