summaryrefslogtreecommitdiff
path: root/advanced/unsafe-rust/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'advanced/unsafe-rust/src/main.rs')
-rw-r--r--advanced/unsafe-rust/src/main.rs62
1 files changed, 0 insertions, 62 deletions
diff --git a/advanced/unsafe-rust/src/main.rs b/advanced/unsafe-rust/src/main.rs
deleted file mode 100644
index c9967a8..0000000
--- a/advanced/unsafe-rust/src/main.rs
+++ /dev/null
@@ -1,62 +0,0 @@
-fn main() {
- let mut num = 5;
-
- let r1 = &num as *const i32;
- let r2 = &mut num as *mut i32;
-
- let address = 0x012345usize;
- let r = address as *const i32;
-
- unsafe {
- println!("{}", *r1);
- println!("{}", *r2);
- }
-
- unsafe {
- dangerous();
- }
-
-
- unsafe {
- println!("c call: {}", abs(-3));
- }
-
-
- unsafe {
- HELLO_WORLD = "test";
- println!("{}", HELLO_WORLD);
- }
- println!("{}", HI_THERE);
-
- add_to_count(3);
-
- unsafe {
- println!("counter: {}", COUNTER);
- }
-}
-
-unsafe fn dangerous() {}
-
-extern "C" {
- fn abs(input: i32) -> i32;
-}
-
-static mut HELLO_WORLD: &str = "hello world";
-static mut COUNTER: u32 = 0;
-
-fn add_to_count(inc: u32) {
- unsafe {
- COUNTER += inc;
- }
-}
-
-const HI_THERE: &str = "hi there";
-
-unsafe trait Foo {
- // methods
-}
-
-unsafe impl Foo for i32 {
- // implementations
-}
-