diff options
Diffstat (limited to 'advanced/adv-lifetimes/src')
-rw-r--r-- | advanced/adv-lifetimes/src/main.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/advanced/adv-lifetimes/src/main.rs b/advanced/adv-lifetimes/src/main.rs deleted file mode 100644 index 755baf4..0000000 --- a/advanced/adv-lifetimes/src/main.rs +++ /dev/null @@ -1,36 +0,0 @@ -fn main() { - let num = 5; - - let obj = Box::new(Ball { diameter: &num }) as Box<dyn Red>; -} - -struct Context<'s>(&'s str); - -struct Parser<'c, 's: 'c> { - context: &'c Context<'s>, -} - -impl<'c, 's> Parser<'c, 's> { - fn parse(&self) -> Result<(), &'s str> { - Err(&self.context.0[1..]) - } -} - -fn parse_context(context: Context) -> Result<(), &str> { - Parser { context: &context }.parse() -} - -trait Red { } - -struct Ball<'a> { - diameter: &'a i32, -} - -impl<'a> Red for Ball<'a> { } - -struct StrWrap<'a>(&'a str); - -fn foo(string: &str) -> StrWrap<'_> { - StrWrap(string) -} - |