summaryrefslogtreecommitdiffstats
path: root/src/test/ui/class-cast-to-trait.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/class-cast-to-trait.rs')
-rw-r--r--src/test/ui/class-cast-to-trait.rs54
1 files changed, 0 insertions, 54 deletions
diff --git a/src/test/ui/class-cast-to-trait.rs b/src/test/ui/class-cast-to-trait.rs
deleted file mode 100644
index 345d6efd2..000000000
--- a/src/test/ui/class-cast-to-trait.rs
+++ /dev/null
@@ -1,54 +0,0 @@
-trait Noisy {
- fn speak(&self);
-}
-
-struct Cat {
- meows : usize,
-
- how_hungry : isize,
- name : String,
-}
-
-impl Cat {
- pub fn eat(&self) -> bool {
- if self.how_hungry > 0 {
- println!("OM NOM NOM");
- self.how_hungry -= 2;
- return true;
- }
- else {
- println!("Not hungry!");
- return false;
- }
- }
-}
-
-impl Noisy for Cat {
- fn speak(&self) { self.meow(); }
-
-}
-
-impl Cat {
- fn meow(&self) {
- println!("Meow");
- self.meows += 1;
- if self.meows % 5 == 0 {
- self.how_hungry += 1;
- }
- }
-}
-
-fn cat(in_x : usize, in_y : isize, in_name: String) -> Cat {
- Cat {
- meows: in_x,
- how_hungry: in_y,
- name: in_name
- }
-}
-
-
-
-fn main() {
- let nyan: Box<dyn Noisy> = Box::new(cat(0, 2, "nyan".to_string())) as Box<dyn Noisy>;
- nyan.eat(); //~ ERROR no method named `eat` found
-}