@@ -36,8 +36,8 @@ use serde_derive::{Deserialize, Serialize};
3636// will instead cause conflicts. See #94591 for more. (This paragraph and the "Latest feature" line
3737// are deliberately not in a doc comment, because they need not be in public docs.)
3838//
39- // Latest feature: Pretty printing of cold attributes changed
40- pub const FORMAT_VERSION : u32 = 50 ;
39+ // Latest feature: improve handling of generic args
40+ pub const FORMAT_VERSION : u32 = 51 ;
4141
4242/// The root of the emitted JSON blob.
4343///
@@ -276,8 +276,8 @@ pub struct PolyTrait {
276276/// A set of generic arguments provided to a path segment, e.g.
277277///
278278/// ```text
279- /// std::option::Option:: <u32>::None
280- /// ^^^^^
279+ /// std::option::Option<u32>
280+ /// ^^^^^
281281/// ```
282282#[ derive( Clone , Debug , PartialEq , Eq , Hash , Serialize , Deserialize ) ]
283283#[ serde( rename_all = "snake_case" ) ]
@@ -330,7 +330,7 @@ pub enum GenericArg {
330330 Const ( Constant ) ,
331331 /// A generic argument that's explicitly set to be inferred.
332332 /// ```text
333- /// std::vec::Vec::<_>::new()
333+ /// std::vec::Vec::<_>
334334 /// ^
335335 /// ```
336336 Infer ,
@@ -361,7 +361,7 @@ pub struct AssocItemConstraint {
361361 /// The name of the associated type/constant.
362362 pub name : String ,
363363 /// Arguments provided to the associated type/constant.
364- pub args : GenericArgs ,
364+ pub args : Option < Box < GenericArgs > > ,
365365 /// The kind of bound applied to the associated type/constant.
366366 pub binding : AssocItemConstraintKind ,
367367}
@@ -1117,7 +1117,7 @@ pub enum Type {
11171117 /// <core::slice::IterMut<'static, u32> as BetterIterator>::Item<'static>
11181118 /// // ^^^^^^^^^
11191119 /// ```
1120- args : Box < GenericArgs > ,
1120+ args : Option < Box < GenericArgs > > ,
11211121 /// The type with which this type is associated.
11221122 ///
11231123 /// ```ignore (incomplete expression)
0 commit comments