Advertisement
Guest User

Untitled

a guest
Apr 19th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. macro_rules! my_vec {
  2. ($y:expr, $($x:expr),*) => {
  3. {
  4. let mut temp_vec = Vec::with_capacity($y);
  5. $(
  6. temp_vec.push($x);
  7. )*
  8. let len = temp_vec.len();
  9. if len > $y {
  10. temp_vec.truncate($y);
  11. }
  12. temp_vec
  13. }
  14. };
  15. }
  16.  
  17. fn main() {
  18. assert_eq!(my_vec![1, 1, 2, 3], vec![1]);
  19. assert_eq!(my_vec![2, 1, 2, 3], vec![1, 2]);
  20. assert_eq!(my_vec![3, 1, 2, 3], vec![1, 2, 3]);
  21. assert_eq!(my_vec![4, 1, 2, 3], vec![1, 2, 3]);
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement