Compare commits

...

4 Commits

Author SHA1 Message Date
27718a0795 fix scripts 2025-07-01 15:18:10 +03:00
f48cfd0056 fix scripts 2025-07-01 15:15:13 +03:00
032c9a54a2 fix scripts 2025-07-01 15:13:23 +03:00
9c19d63121 ownership 2025-07-01 15:06:05 +03:00
6 changed files with 209 additions and 6 deletions

161
Cargo.lock generated Normal file
View File

@@ -0,0 +1,161 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4
[[package]]
name = "branches"
version = "0.1.0"
[[package]]
name = "cfg-if"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268"
[[package]]
name = "data_types"
version = "0.1.0"
[[package]]
name = "functions"
version = "0.1.0"
[[package]]
name = "getrandom"
version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"
dependencies = [
"cfg-if",
"libc",
"wasi",
]
[[package]]
name = "guessing_game"
version = "0.1.0"
dependencies = [
"rand",
]
[[package]]
name = "hello_cargo"
version = "0.1.0"
[[package]]
name = "libc"
version = "0.2.174"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776"
[[package]]
name = "loops"
version = "0.1.0"
[[package]]
name = "ownership"
version = "0.1.0"
[[package]]
name = "ppv-lite86"
version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
dependencies = [
"zerocopy",
]
[[package]]
name = "proc-macro2"
version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
dependencies = [
"proc-macro2",
]
[[package]]
name = "rand"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
dependencies = [
"libc",
"rand_chacha",
"rand_core",
]
[[package]]
name = "rand_chacha"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
dependencies = [
"ppv-lite86",
"rand_core",
]
[[package]]
name = "rand_core"
version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
dependencies = [
"getrandom",
]
[[package]]
name = "syn"
version = "2.0.104"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "unicode-ident"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
[[package]]
name = "variables"
version = "0.1.0"
[[package]]
name = "wasi"
version = "0.11.1+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
[[package]]
name = "zerocopy"
version = "0.8.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f"
dependencies = [
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
version = "0.8.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181"
dependencies = [
"proc-macro2",
"quote",
"syn",
]

View File

@@ -7,5 +7,6 @@ members = [
"hello_cargo",
"loops",
"ownership",
"references_and_borrowing",
"variables",
]

View File

@@ -1,13 +1,16 @@
#!/bin/bash
set -e
name="$1"
if [ -z "$name" ]; then
echo "Usage: ./monorepo-cargo-new.sh <project_name>"
echo "Usage: ./create_project.sh <project_name>"
exit 1
fi
# Step 1: Create new cargo project without Git
cargo new "$name" --vcs none
echo " \"$name\"," >> Cargo.toml
echo "✅ Project '$name' created and added to workspace!"
echo "add $name to Cargo.toml"

View File

@@ -1,5 +1,34 @@
fn main() {
let mut s = String::from("Hello");
s.push_str(", World!");
println!("{s}");
let s1 = String::from("Hello");
let s2 = s1; // s1 goes out of scope here
println!("{s2}, world!");
let mut s = String::from("hello");
s = String::from("world"); // original "hello" value drops here
println!("hello, {s}");
let s1 = String::from("hello");
let s2 = s1.clone(); // heap data gets copied here
println!("s1 = {s1}, s2 = {s2}");
let s3 = String::from("forsen");
copy_string_value(s3);
// println!("{s3}");
// will throw and erorr
let s4 = String::from("gachi");
let (s5, len) = calculate_length(s4);
//println!("{s4}");
// also will throw an error
println!("string: {s5}, length: {len}")
}
fn copy_string_value(string: String) {
println!("{string}");
}
fn calculate_length(s: String) -> (String, usize) {
let length = s.len();
(s, length)
}

View File

@@ -0,0 +1,6 @@
[package]
name = "references_and_borrowing"
version = "0.1.0"
edition = "2024"
[dependencies]

View File

@@ -0,0 +1,3 @@
fn main() {
println!("Hello, world!");
}