use extendr_api::prelude::*; #[test] fn test_allocation() { test! { const COUNT: u64 = 2_000_000u64; let mut data: Vec = vec![]; for i in 1u64..COUNT { // if i % 1000 == 0 { println!("{}", i); } data.push(i.into()); } for (ix, v) in data.iter().enumerate() { assert_eq!(Some((ix + 1) as f64), v.as_real()) } let mut obj: Robj = List::from_names_and_values(&["A"], vec![data]).into(); obj.set_attrib( row_names_symbol(), (1i32..=COUNT as i32).collect_robj(), )?; obj.set_class(&["data.frame"])?; } }