]>
git.proxmox.com Git - cargo.git/blob - vendor/syn/tests/test_pat.rs
2 use syn
::{Item, Pat, Stmt}
;
6 match syn
::parse2(quote
!(self)).unwrap() {
8 value
=> panic
!("expected PatIdent, got {:?}", value
),
14 match syn
::parse2(quote
!(self::CONST
)).unwrap() {
16 value
=> panic
!("expected PatPath, got {:?}", value
),
21 fn test_leading_vert() {
22 // https://github.com/rust-lang/rust/blob/1.43.0/src/test/ui/or-patterns/remove-leading-vert.rs
24 syn
::parse_str
::<Item
>("fn f() {}").unwrap();
25 syn
::parse_str
::<Item
>("fn fun1(| A: E) {}").unwrap_err();
26 syn
::parse_str
::<Item
>("fn fun2(|| A: E) {}").unwrap_err();
28 syn
::parse_str
::<Stmt
>("let | () = ();").unwrap();
29 syn
::parse_str
::<Stmt
>("let (| A): E;").unwrap_err();
30 syn
::parse_str
::<Stmt
>("let (|| A): (E);").unwrap_err();
31 syn
::parse_str
::<Stmt
>("let (| A,): (E,);").unwrap_err();
32 syn
::parse_str
::<Stmt
>("let [| A]: [E; 1];").unwrap_err();
33 syn
::parse_str
::<Stmt
>("let [|| A]: [E; 1];").unwrap_err();
34 syn
::parse_str
::<Stmt
>("let TS(| A): TS;").unwrap_err();
35 syn
::parse_str
::<Stmt
>("let TS(|| A): TS;").unwrap_err();
36 syn
::parse_str
::<Stmt
>("let NS { f: | A }: NS;").unwrap_err();
37 syn
::parse_str
::<Stmt
>("let NS { f: || A }: NS;").unwrap_err();