From fdf0c1b353393ff34b1dee6edfbfece13f7c3093 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Wed, 11 Jul 2012 12:45:54 -0700 Subject: core: Newtype a bunch of types in libcore --- src/libcore/dvec.rs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/libcore/dvec.rs') diff --git a/src/libcore/dvec.rs b/src/libcore/dvec.rs index ec396f474a7..f9bb58380b2 100644 --- a/src/libcore/dvec.rs +++ b/src/libcore/dvec.rs @@ -46,28 +46,32 @@ export unwrap; * pointers achieved about 103 million pushes/second. Using an option * type could only produce 47 million pushes/second. */ -type dvec = { +type dvec_ = { mut data: ~[mut A] }; +enum dvec { + dvec_(dvec_) +} + /// Creates a new, empty dvec fn dvec() -> dvec { - {mut data: ~[mut]} + dvec_({mut data: ~[mut]}) } /// Creates a new dvec with a single element fn from_elem(+e: A) -> dvec { - {mut data: ~[mut e]} + dvec_({mut data: ~[mut e]}) } /// Creates a new dvec with the contents of a vector fn from_vec(+v: ~[mut A]) -> dvec { - {mut data: v} + dvec_({mut data: v}) } /// Consumes the vector and returns its contents fn unwrap(-d: dvec) -> ~[mut A] { - let {data: v} <- d; + let dvec_({data: v}) <- d; ret v; } -- cgit 1.4.1-3-g733a5