summaryrefslogtreecommitdiffstats
path: root/src/test/ui/statics/static-impl.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/statics/static-impl.rs
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/statics/static-impl.rs')
-rw-r--r--src/test/ui/statics/static-impl.rs66
1 files changed, 0 insertions, 66 deletions
diff --git a/src/test/ui/statics/static-impl.rs b/src/test/ui/statics/static-impl.rs
deleted file mode 100644
index e7bdb38ee..000000000
--- a/src/test/ui/statics/static-impl.rs
+++ /dev/null
@@ -1,66 +0,0 @@
-// run-pass
-#![allow(non_camel_case_types)]
-
-
-
-
-pub trait plus {
- fn plus(&self) -> isize;
-}
-
-mod a {
- use plus;
- impl plus for usize { fn plus(&self) -> isize { *self as isize + 20 } }
-}
-
-mod b {
- use plus;
- impl plus for String { fn plus(&self) -> isize { 200 } }
-}
-
-trait uint_utils {
- fn str(&self) -> String;
- fn multi<F>(&self, f: F) where F: FnMut(usize);
-}
-
-impl uint_utils for usize {
- fn str(&self) -> String {
- self.to_string()
- }
- fn multi<F>(&self, mut f: F) where F: FnMut(usize) {
- let mut c = 0_usize;
- while c < *self { f(c); c += 1_usize; }
- }
-}
-
-trait vec_utils<T> {
- fn length_(&self, ) -> usize;
- fn iter_<F>(&self, f: F) where F: FnMut(&T);
- fn map_<U, F>(&self, f: F) -> Vec<U> where F: FnMut(&T) -> U;
-}
-
-impl<T> vec_utils<T> for Vec<T> {
- fn length_(&self) -> usize { self.len() }
- fn iter_<F>(&self, mut f: F) where F: FnMut(&T) { for x in self { f(x); } }
- fn map_<U, F>(&self, mut f: F) -> Vec<U> where F: FnMut(&T) -> U {
- let mut r = Vec::new();
- for elt in self {
- r.push(f(elt));
- }
- r
- }
-}
-
-pub fn main() {
- assert_eq!(10_usize.plus(), 30);
- assert_eq!(("hi".to_string()).plus(), 200);
-
- assert_eq!((vec![1]).length_().str(), "1".to_string());
- let vect = vec![3, 4].map_(|a| *a + 4);
- assert_eq!(vect[0], 7);
- let vect = (vec![3, 4]).map_::<usize, _>(|a| *a as usize + 4_usize);
- assert_eq!(vect[0], 7_usize);
- let mut x = 0_usize;
- 10_usize.multi(|_n| x += 2_usize );
- assert_eq!(x, 20_usize);
-}