@@ -152,7 +152,7 @@ impl Attr {
152152 pub fn l_brack_token ( & self ) -> Option < SyntaxToken > { support:: token ( & self . syntax , T ! [ '[' ] ) }
153153 pub fn path ( & self ) -> Option < Path > { support:: child ( & self . syntax ) }
154154 pub fn eq_token ( & self ) -> Option < SyntaxToken > { support:: token ( & self . syntax , T ! [ =] ) }
155- pub fn literal ( & self ) -> Option < Literal > { support:: child ( & self . syntax ) }
155+ pub fn expr ( & self ) -> Option < Expr > { support:: child ( & self . syntax ) }
156156 pub fn token_tree ( & self ) -> Option < TokenTree > { support:: child ( & self . syntax ) }
157157 pub fn r_brack_token ( & self ) -> Option < SyntaxToken > { support:: token ( & self . syntax , T ! [ ']' ] ) }
158158}
@@ -632,12 +632,6 @@ impl WherePred {
632632 pub fn ty ( & self ) -> Option < Type > { support:: child ( & self . syntax ) }
633633}
634634#[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
635- pub struct Literal {
636- pub ( crate ) syntax : SyntaxNode ,
637- }
638- impl ast:: AttrsOwner for Literal { }
639- impl Literal { }
640- #[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
641635pub struct ExprStmt {
642636 pub ( crate ) syntax : SyntaxNode ,
643637}
@@ -805,6 +799,12 @@ impl IndexExpr {
805799 pub fn r_brack_token ( & self ) -> Option < SyntaxToken > { support:: token ( & self . syntax , T ! [ ']' ] ) }
806800}
807801#[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
802+ pub struct Literal {
803+ pub ( crate ) syntax : SyntaxNode ,
804+ }
805+ impl ast:: AttrsOwner for Literal { }
806+ impl Literal { }
807+ #[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
808808pub struct LoopExpr {
809809 pub ( crate ) syntax : SyntaxNode ,
810810}
@@ -2072,17 +2072,6 @@ impl AstNode for WherePred {
20722072 }
20732073 fn syntax ( & self ) -> & SyntaxNode { & self . syntax }
20742074}
2075- impl AstNode for Literal {
2076- fn can_cast ( kind : SyntaxKind ) -> bool { kind == LITERAL }
2077- fn cast ( syntax : SyntaxNode ) -> Option < Self > {
2078- if Self :: can_cast ( syntax. kind ( ) ) {
2079- Some ( Self { syntax } )
2080- } else {
2081- None
2082- }
2083- }
2084- fn syntax ( & self ) -> & SyntaxNode { & self . syntax }
2085- }
20862075impl AstNode for ExprStmt {
20872076 fn can_cast ( kind : SyntaxKind ) -> bool { kind == EXPR_STMT }
20882077 fn cast ( syntax : SyntaxNode ) -> Option < Self > {
@@ -2259,6 +2248,17 @@ impl AstNode for IndexExpr {
22592248 }
22602249 fn syntax ( & self ) -> & SyntaxNode { & self . syntax }
22612250}
2251+ impl AstNode for Literal {
2252+ fn can_cast ( kind : SyntaxKind ) -> bool { kind == LITERAL }
2253+ fn cast ( syntax : SyntaxNode ) -> Option < Self > {
2254+ if Self :: can_cast ( syntax. kind ( ) ) {
2255+ Some ( Self { syntax } )
2256+ } else {
2257+ None
2258+ }
2259+ }
2260+ fn syntax ( & self ) -> & SyntaxNode { & self . syntax }
2261+ }
22622262impl AstNode for LoopExpr {
22632263 fn can_cast ( kind : SyntaxKind ) -> bool { kind == LOOP_EXPR }
22642264 fn cast ( syntax : SyntaxNode ) -> Option < Self > {
@@ -3887,11 +3887,6 @@ impl std::fmt::Display for WherePred {
38873887 std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
38883888 }
38893889}
3890- impl std:: fmt:: Display for Literal {
3891- fn fmt ( & self , f : & mut std:: fmt:: Formatter < ' _ > ) -> std:: fmt:: Result {
3892- std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
3893- }
3894- }
38953890impl std:: fmt:: Display for ExprStmt {
38963891 fn fmt ( & self , f : & mut std:: fmt:: Formatter < ' _ > ) -> std:: fmt:: Result {
38973892 std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
@@ -3972,6 +3967,11 @@ impl std::fmt::Display for IndexExpr {
39723967 std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
39733968 }
39743969}
3970+ impl std:: fmt:: Display for Literal {
3971+ fn fmt ( & self , f : & mut std:: fmt:: Formatter < ' _ > ) -> std:: fmt:: Result {
3972+ std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
3973+ }
3974+ }
39753975impl std:: fmt:: Display for LoopExpr {
39763976 fn fmt ( & self , f : & mut std:: fmt:: Formatter < ' _ > ) -> std:: fmt:: Result {
39773977 std:: fmt:: Display :: fmt ( self . syntax ( ) , f)
0 commit comments