tag-vec

Crates.iotag-vec
lib.rstag-vec
version0.0.2
sourcesrc
created_at2020-03-13 20:16:26.613339
updated_at2020-03-13 20:48:01.960197
descriptionA vector used for storing tags
homepage
repositoryhttps://github.com/TrolledWoods/tag-vec
max_upload_size
id218335
size20,821
TrolledWoods (TrolledWoods)

documentation

README

tag-vec

A rust crate for a vector of tags

Examples

// Create a vector of tags with the tags 
// "healthy"(healthy food), "junk"(junk food) and "veg"(vegetarian)
let foods: TagVec<String> = TagVec::new();
foods.push(vec!["healthy", "veg"]);
foods.push(vec!["junk"]);
foods.push(vec!["healthy", "veg"]);
foods.push(vec!["junk", "veg"]);
foods.push(vec!["junk"]);

// We don't want healthy or vegetarian food,
// we're not plebs who care about the planet, are we!?
use expressions::*;
let mut cool_foods = tags.query(and(not(tag("veg")), not(tag("healthy"))));
for food in cool_foods {
	println!("{:?}", food);
}

// Expected output: (It only outputs the indices of the matching elements, 
// this is a vec, so the order matters)
// 1
// 3

Features to come:

  • Changing the tags of an element
  • Removing elements(ugh, this is going to be an expensive operation)
  • Popping elements(not expensive at all!)
Commit count: 9

cargo fmt