Skip to content

Commit

Permalink
Merge pull request #1984 from sahab328/main
Browse files Browse the repository at this point in the history
task2 + task3 + task4 + 第三周课程学习
  • Loading branch information
Sifotd authored Nov 24, 2024
2 parents c5c7a95 + 20178cc commit 402400e
Show file tree
Hide file tree
Showing 17 changed files with 447 additions and 14 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion mover/sahab328/coLearn2411/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

- [] 第一周:![学习记录截图](./images/你的图片地址)
- [] 第二周:![学习记录截图](./images/你的图片地址)
- [] 第三周:![学习记录截图](./images/你的图片地址)
- [x] 第三周:![学习记录截图](./images/week3_learning.png)
- [] 第四周:![学习记录截图](./images/你的图片地址)

## 参加直播答疑
Expand Down
40 changes: 40 additions & 0 deletions mover/sahab328/code/task2/my_coin/Move.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# @generated by Move, please check-in and do not edit manually.

[move]
version = 3
manifest_digest = "0A4652D38CF3C3FDB79EC6C1C98FCFF7B2E933E12B84A1DA267DB28F66AFECE3"
deps_digest = "F8BBB0CCB2491CA29A3DF03D6F92277A4F3574266507ACD77214D37ECA3F3082"
dependencies = [
{ id = "Sui", name = "Sui" },
]

[[move.package]]
id = "MoveStdlib"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/move-stdlib" }

[[move.package]]
id = "Sui"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/sui-framework" }

dependencies = [
{ id = "MoveStdlib", name = "MoveStdlib" },
]

[move.toolchain-version]
compiler-version = "1.36.2"
edition = "2024.beta"
flavor = "sui"

[env]

[env.testnet]
chain-id = "4c78adac"
original-published-id = "0xa87eaab797fcf55cf3a8798f5bc66528aa838a506021b7eaa4a077c6391b8c85"
latest-published-id = "0xa87eaab797fcf55cf3a8798f5bc66528aa838a506021b7eaa4a077c6391b8c85"
published-version = "1"

[env.mainnet]
chain-id = "35834a8a"
original-published-id = "0x6fad4e0f5f68ed70e322aca3dc36f9d09da758bdcdb8e06661aa18bd8da5ed6a"
latest-published-id = "0x6fad4e0f5f68ed70e322aca3dc36f9d09da758bdcdb8e06661aa18bd8da5ed6a"
published-version = "1"
37 changes: 37 additions & 0 deletions mover/sahab328/code/task2/my_coin/Move.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[package]
name = "my_coin"
edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move
# license = "" # e.g., "MIT", "GPL", "Apache 2.0"
# authors = ["..."] # e.g., ["Joe Smith ([email protected])", "John Snow ([email protected])"]

[dependencies]
Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet" }

# For remote import, use the `{ git = "...", subdir = "...", rev = "..." }`.
# Revision can be a branch, a tag, and a commit hash.
# MyRemotePackage = { git = "https://some.remote/host.git", subdir = "remote/path", rev = "main" }

# For local dependencies use `local = path`. Path is relative to the package root
# Local = { local = "../path/to" }

# To resolve a version conflict and force a specific version for dependency
# override use `override = true`
# Override = { local = "../conflicting/version", override = true }

[addresses]
my_coin = "0x0"

# Named addresses will be accessible in Move as `@name`. They're also exported:
# for example, `std = "0x1"` is exported by the Standard Library.
# alice = "0xA11CE"

[dev-dependencies]
# The dev-dependencies section allows overriding dependencies for `--test` and
# `--dev` modes. You can introduce test-only dependencies here.
# Local = { local = "../path/to/dev-build" }

[dev-addresses]
# The dev-addresses section allows overwriting named addresses for the `--test`
# and `--dev` modes.
# alice = "0xB0B"

20 changes: 20 additions & 0 deletions mover/sahab328/code/task2/my_coin/sources/meme.move
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
module my_coin::meme;

use sui::url::{Self, Url};
use sui::coin::{create_currency};
use std::option::{some};

use sui::transfer::{public_freeze_object, public_share_object};

public struct MEME has drop {}

fun init(witness: MEME, ctx: &mut TxContext) {
// let no = none<Url>();
let url = url::new_unsafe_from_bytes(b"https://avatars.githubusercontent.com/u/162699534");
let icon_url = some<Url>(url);
let (treasury, coin_meta) = create_currency(witness, 18, b"MEME", b"MEME", b"sahab's meme token", icon_url, ctx);

public_freeze_object(coin_meta);

public_share_object(treasury);
}
20 changes: 20 additions & 0 deletions mover/sahab328/code/task2/my_coin/sources/sa.move
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
module my_coin::sa;

use sui::url::{Self, Url};
use sui::coin::{create_currency};
use std::option::{some};

use sui::transfer::{public_freeze_object, public_transfer};

public struct SA has drop {}

fun init(sa: SA, ctx: &mut TxContext) {
// let no = none<Url>();
let url = url::new_unsafe_from_bytes(b"https://avatars.githubusercontent.com/u/162699534");
let icon_url = some<Url>(url);
let (treasury, coin_meta) = create_currency(sa, 18, b"SA", b"SA", b"sahab's token", icon_url, ctx);

public_freeze_object(coin_meta);

public_transfer(treasury, ctx.sender());
}
18 changes: 18 additions & 0 deletions mover/sahab328/code/task2/my_coin/tests/my_coin_tests.move
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/*
#[test_only]
module my_coin::my_coin_tests;
// uncomment this line to import the module
// use my_coin::my_coin;
const ENotImplemented: u64 = 0;
#[test]
fun test_my_coin() {
// pass
}
#[test, expected_failure(abort_code = ::my_coin::my_coin_tests::ENotImplemented)]
fun test_my_coin_fail() {
abort ENotImplemented
}
*/
40 changes: 40 additions & 0 deletions mover/sahab328/code/task3/nft/Move.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# @generated by Move, please check-in and do not edit manually.

[move]
version = 3
manifest_digest = "9D4FCF5807A34E3110DFBA44AD92FEFEC55EE3DE8CF58F3D302F55D3004E70D1"
deps_digest = "F8BBB0CCB2491CA29A3DF03D6F92277A4F3574266507ACD77214D37ECA3F3082"
dependencies = [
{ id = "Sui", name = "Sui" },
]

[[move.package]]
id = "MoveStdlib"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/move-stdlib" }

[[move.package]]
id = "Sui"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/sui-framework" }

dependencies = [
{ id = "MoveStdlib", name = "MoveStdlib" },
]

[move.toolchain-version]
compiler-version = "1.36.2"
edition = "2024.beta"
flavor = "sui"

[env]

[env.testnet]
chain-id = "4c78adac"
original-published-id = "0x1d47e2d3ad1a2b9ef6c292f03ab8ee4674a8ac25ba8e9506e38d25822d1e150f"
latest-published-id = "0x1d47e2d3ad1a2b9ef6c292f03ab8ee4674a8ac25ba8e9506e38d25822d1e150f"
published-version = "1"

[env.mainnet]
chain-id = "35834a8a"
original-published-id = "0x3adb69d9749acdec6662209d9be6300cc0c79988622e6532447b52f4c53b6df1"
latest-published-id = "0x3adb69d9749acdec6662209d9be6300cc0c79988622e6532447b52f4c53b6df1"
published-version = "1"
37 changes: 37 additions & 0 deletions mover/sahab328/code/task3/nft/Move.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[package]
name = "nft"
edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move
# license = "" # e.g., "MIT", "GPL", "Apache 2.0"
# authors = ["..."] # e.g., ["Joe Smith ([email protected])", "John Snow ([email protected])"]

[dependencies]
Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet" }

# For remote import, use the `{ git = "...", subdir = "...", rev = "..." }`.
# Revision can be a branch, a tag, and a commit hash.
# MyRemotePackage = { git = "https://some.remote/host.git", subdir = "remote/path", rev = "main" }

# For local dependencies use `local = path`. Path is relative to the package root
# Local = { local = "../path/to" }

# To resolve a version conflict and force a specific version for dependency
# override use `override = true`
# Override = { local = "../conflicting/version", override = true }

[addresses]
nft = "0x0"

# Named addresses will be accessible in Move as `@name`. They're also exported:
# for example, `std = "0x1"` is exported by the Standard Library.
# alice = "0xA11CE"

[dev-dependencies]
# The dev-dependencies section allows overriding dependencies for `--test` and
# `--dev` modes. You can introduce test-only dependencies here.
# Local = { local = "../path/to/dev-build" }

[dev-addresses]
# The dev-addresses section allows overwriting named addresses for the `--test`
# and `--dev` modes.
# alice = "0xB0B"

32 changes: 32 additions & 0 deletions mover/sahab328/code/task3/nft/sources/nft.move
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

module nft::nft;

use std::string::{Self, String};
use sui::url::{Self, Url};
use sui::transfer::transfer;

public struct NFT has key {
id: UID,
name: String,
url: Url
}

fun init(ctx: &mut TxContext) {
let nft = NFT {
id: object::new(ctx),
name: string::utf8(b"sahab NFT"),
url: url::new_unsafe(b"https://avatars.githubusercontent.com/u/162699534".to_ascii_string())
};

transfer(nft, ctx.sender());
}

public entry fun mint_to(receiver: address, ctx: &mut TxContext) {
let nft = NFT {
id: object::new(ctx),
name: string::utf8(b"sahab NFT"),
url: url::new_unsafe(b"https://avatars.githubusercontent.com/u/162699534".to_ascii_string())
};

transfer(nft, receiver);
}
18 changes: 18 additions & 0 deletions mover/sahab328/code/task3/nft/tests/nft_tests.move
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/*
#[test_only]
module nft::nft_tests;
// uncomment this line to import the module
// use nft::nft;
const ENotImplemented: u64 = 0;
#[test]
fun test_nft() {
// pass
}
#[test, expected_failure(abort_code = ::nft::nft_tests::ENotImplemented)]
fun test_nft_fail() {
abort ENotImplemented
}
*/
49 changes: 49 additions & 0 deletions mover/sahab328/code/task4/game/Move.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# @generated by Move, please check-in and do not edit manually.

[move]
version = 3
manifest_digest = "86203A0985C424653C576953C170EEEDC2F4B20DCF61ED64DEDCEB710F8D735F"
deps_digest = "3C4103934B1E040BB6B23F1D610B4EF9F2F1166A50A104EADCF77467C004C600"
dependencies = [
{ id = "Sui", name = "Sui" },
{ id = "my_coin", name = "my_coin" },
]

[[move.package]]
id = "MoveStdlib"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/move-stdlib" }

[[move.package]]
id = "Sui"
source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/sui-framework" }

dependencies = [
{ id = "MoveStdlib", name = "MoveStdlib" },
]

[[move.package]]
id = "my_coin"
source = { local = "../../task2/my_coin" }

dependencies = [
{ id = "Sui", name = "Sui" },
]

[move.toolchain-version]
compiler-version = "1.36.2"
edition = "2024.beta"
flavor = "sui"

[env]

[env.testnet]
chain-id = "4c78adac"
original-published-id = "0xc29de30c4951b1e8d8b80b532a62fe3736b5411d031680411a47db917852ab47"
latest-published-id = "0xc29de30c4951b1e8d8b80b532a62fe3736b5411d031680411a47db917852ab47"
published-version = "1"

[env.mainnet]
chain-id = "35834a8a"
original-published-id = "0x90c9955a7f6bf5eadabe0df7d3d029c6a59fe84f0d0ddf05724d8568814e9b57"
latest-published-id = "0x90c9955a7f6bf5eadabe0df7d3d029c6a59fe84f0d0ddf05724d8568814e9b57"
published-version = "1"
38 changes: 38 additions & 0 deletions mover/sahab328/code/task4/game/Move.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
[package]
name = "game"
edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move
# license = "" # e.g., "MIT", "GPL", "Apache 2.0"
# authors = ["..."] # e.g., ["Joe Smith ([email protected])", "John Snow ([email protected])"]

[dependencies]
Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet" }
my_coin = { local = "../../task2/my_coin" }

# For remote import, use the `{ git = "...", subdir = "...", rev = "..." }`.
# Revision can be a branch, a tag, and a commit hash.
# MyRemotePackage = { git = "https://some.remote/host.git", subdir = "remote/path", rev = "main" }

# For local dependencies use `local = path`. Path is relative to the package root
# Local = { local = "../path/to" }

# To resolve a version conflict and force a specific version for dependency
# override use `override = true`
# Override = { local = "../conflicting/version", override = true }

[addresses]
game = "0x0"

# Named addresses will be accessible in Move as `@name`. They're also exported:
# for example, `std = "0x1"` is exported by the Standard Library.
# alice = "0xA11CE"

[dev-dependencies]
# The dev-dependencies section allows overriding dependencies for `--test` and
# `--dev` modes. You can introduce test-only dependencies here.
# Local = { local = "../path/to/dev-build" }

[dev-addresses]
# The dev-addresses section allows overwriting named addresses for the `--test`
# and `--dev` modes.
# alice = "0xB0B"

Loading

0 comments on commit 402400e

Please sign in to comment.