Skip to content

Instantly share code, notes, and snippets.

@dstu
dstu / hashset.rs
Created January 16, 2015 07:26
Sticking a custom composite type into a HashSet.
use std::collections::HashSet;
#[deriving(Eq, Hash)]
struct Foo {
a: usize,
b: &'static str,
}
pub fn main() {
let mut s = HashSet::new();
#![feature(append)]
use std::fmt;
use std::result::Result;
/// Simple tree data structure that owns its child nodes.
#[derive(Eq, PartialEq)]
struct Tree<T> {
data: T,
children: Vec<Tree<T>>,
@dstu
dstu / playground.rs
Created December 17, 2015 01:45 — forked from anonymous/playground.rs
Shared via Rust Playground
#![feature(drain)]
use std::cmp::Ordering;
pub fn main() {
let mut x_vec = vec![1, 2, 3, 4];
let mut y_vec = vec![3, 4, 5];
// Slightly contrived example: iterate through two sorted sequences in
// tandem, merging them into a new sequence.
let mut xs = x_vec.drain(0..);
@dstu
dstu / Cargo.toml
Created January 17, 2017 03:59
Unable to see the syn::Pat enum type
[package]
name = "syn_pat_compile"
version = "0.1.0"
authors = ["Stu Black <trurl@freeshell.org>"]
[dependencies]
syn = "0.10.6"
@dstu
dstu / playground.rs
Created April 24, 2018 23:24 — forked from rust-play/playground.rs
Code shared from the Rust Playground
use array::with;
mod array {
use std::marker::PhantomData;
use std::ops::{Deref, DerefMut};
#[derive(Clone,Copy)]
pub struct InvariantLifetime<'id>(
PhantomData<*mut &'id ()>);