about summary refs log tree commit diff
path: root/src/libstd/list.rs
diff options
context:
space:
mode:
authorChris Peterson <cpeterson@mozilla.com>2012-12-23 14:38:01 -0800
committerChris Peterson <cpeterson@mozilla.com>2012-12-23 14:38:01 -0800
commitffaa47736866ca89b8d23cd3f14d54efefdb6243 (patch)
treeb50b45c4598ce48f3dc62610d299ee76ba74ce88 /src/libstd/list.rs
parent6d8621ae7f0df0bc3878c256b98a6483fc3d9a32 (diff)
downloadrust-ffaa47736866ca89b8d23cd3f14d54efefdb6243.tar.gz
rust-ffaa47736866ca89b8d23cd3f14d54efefdb6243.zip
std: Mark some functions as pure
Diffstat (limited to 'src/libstd/list.rs')
-rw-r--r--src/libstd/list.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/libstd/list.rs b/src/libstd/list.rs
index 6d2c10eb827..e41aab8ec1f 100644
--- a/src/libstd/list.rs
+++ b/src/libstd/list.rs
@@ -22,8 +22,8 @@ pub enum List<T> {
     Nil,
 }
 
-/// Cregate a list from a vector
-pub fn from_vec<T: Copy>(v: &[T]) -> @List<T> {
+/// Create a list from a vector
+pub pure fn from_vec<T: Copy>(v: &[T]) -> @List<T> {
     vec::foldr(v, @Nil::<T>, |h, t| @Cons(*h, t))
 }
 
@@ -53,7 +53,7 @@ pub fn foldl<T: Copy, U>(z: T, ls: @List<U>, f: fn(&T, &U) -> T) -> T {
  * When function `f` returns true then an option containing the element
  * is returned. If `f` matches no elements then none is returned.
  */
-pub fn find<T: Copy>(ls: @List<T>, f: fn(&T) -> bool) -> Option<T> {
+pub pure fn find<T: Copy>(ls: @List<T>, f: fn(&T) -> bool) -> Option<T> {
     let mut ls = ls;
     loop {
         ls = match *ls {
@@ -88,7 +88,7 @@ pub pure fn is_not_empty<T: Copy>(ls: @List<T>) -> bool {
 }
 
 /// Returns the length of a list
-pub fn len<T>(ls: @List<T>) -> uint {
+pub pure fn len<T>(ls: @List<T>) -> uint {
     let mut count = 0u;
     iter(ls, |_e| count += 1u);
     count
@@ -131,7 +131,7 @@ pure fn push<T: Copy>(ll: &mut @list<T>, vv: T) {
 */
 
 /// Iterate over a list
-pub fn iter<T>(l: @List<T>, f: fn(&T)) {
+pub pure fn iter<T>(l: @List<T>, f: fn(&T)) {
     let mut cur = l;
     loop {
         cur = match *cur {
@@ -145,7 +145,7 @@ pub fn iter<T>(l: @List<T>, f: fn(&T)) {
 }
 
 /// Iterate over a list
-pub fn each<T>(l: @List<T>, f: fn(&T) -> bool) {
+pub pure fn each<T>(l: @List<T>, f: fn(&T) -> bool) {
     let mut cur = l;
     loop {
         cur = match *cur {