()
| 939 | |
| 940 | #[test] |
| 941 | fn parse_atom_brackets() { |
| 942 | assert_eq!( |
| 943 | Atom::take("[ab]"), |
| 944 | Ok(( |
| 945 | "", |
| 946 | Atom::MatchingList(vec![ |
| 947 | BracketExpressionTerm::Single('a'), |
| 948 | BracketExpressionTerm::Single('b'), |
| 949 | ]) |
| 950 | )) |
| 951 | ); |
| 952 | assert_eq!( |
| 953 | Atom::take("[]ab]"), |
| 954 | Ok(( |
| 955 | "", |
| 956 | Atom::MatchingList(vec![ |
| 957 | BracketExpressionTerm::Single(']'), |
| 958 | BracketExpressionTerm::Single('a'), |
| 959 | BracketExpressionTerm::Single('b'), |
| 960 | ]) |
| 961 | )) |
| 962 | ); |
| 963 | assert_eq!( |
| 964 | Atom::take("[]ab-]"), |
| 965 | Ok(( |
| 966 | "", |
| 967 | Atom::MatchingList(vec![ |
| 968 | BracketExpressionTerm::Single(']'), |
| 969 | BracketExpressionTerm::Single('a'), |
| 970 | BracketExpressionTerm::Single('b'), |
| 971 | BracketExpressionTerm::Single('-'), |
| 972 | ]) |
| 973 | )) |
| 974 | ); |
| 975 | |
| 976 | assert_eq!( |
| 977 | Atom::take("[]a-y]"), |
| 978 | Ok(( |
| 979 | "", |
| 980 | Atom::MatchingList(vec![ |
| 981 | BracketExpressionTerm::Single(']'), |
| 982 | BracketExpressionTerm::Range('a', 'y'), |
| 983 | ]) |
| 984 | )) |
| 985 | ); |
| 986 | assert_eq!( |
| 987 | Atom::take("[]+--]"), |
| 988 | Ok(( |
| 989 | "", |
| 990 | Atom::MatchingList(vec![ |
| 991 | BracketExpressionTerm::Single(']'), |
| 992 | BracketExpressionTerm::Range('+', '-'), |
| 993 | ]) |
| 994 | )) |
| 995 | ); |
| 996 | |
| 997 | assert_eq!( |
| 998 | Atom::take("[^]a-y]"), |
nothing calls this directly
no outgoing calls
no test coverage detected