Is there any efficient way to implement WeakMaps in Rust? Well, technically it's not WeakMap because Rust doesn't have GC and thus "weak" doesn't make much sense, but what I'm interested in is a way to store extra information on objects with O(1) lookup, where HashMap is not really the best solution.
Another way of looking into this would be "traits with data members".
To elaborate a little bit more - I'm going to store information associated with nodes in a tree retrieved from an external crate, so just adding data members is not really an option (without forking that crate just for this purpose); recreating entire tree but with wrappers around each node also seems too expensive (and requires lots of code to handle all kinds of nodes).
The only approach that seems to allow this so far is defining custom allocator which would reserve extra space on objects, but I'm not sure I want to go down that way and hope for a simpler solution.
Hi. noob here. I'm trying to create a sqlite database
let conn = Connection::open_in_memory().unwrap();
the doc tells me I can open like this: open<P: AsRef<Path>>(path: P) -> Result<Connection>
Benjamin Z
@benjyz
nice.. got it let conn = Connection::open(path).unwrap();
Benjamin Z
@benjyz
how do I put off warnings in cargo?
Thomas Koehler
@Bastacyclop
which warnings ?
Benjamin Z
@benjyz
"function is never used: xyz, #[warn(dead_code)] on by default"
e.g.
Thomas Koehler
@Bastacyclop
FYI this comes from the rust compiler (rustc) which is called by cargo. You can use #[allow(dead_code)] in the code. This is called an attribute https://doc.rust-lang.org/book/attributes.html.
Benjamin Z
@benjyz
thanks. equally I try to ignore other warnings with
warning: unused import, #[warn(unused_imports)] on by default
with this.. doesn't work "#![warn(unused_imports)]"
Thomas Koehler
@Bastacyclop
#[warn(stuff)] means you want a warning#[allow(stuff)] means you don't want anything#[deny(stuff)] means you want an error