Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Using non unicode crate name, using an existing edition number, fixin…
…g a collision in enum, which chages the syntax a bit.
  • Loading branch information
lmglmg committed Nov 11, 2022
commit 9985e5c6e6d8fa6d5d1da0522be11385787fc57c
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Here's an example of what can be achieved with Hrđa:
### trait and impl (aka svojstvo et ispuna)

```rust
hrđa::hrđa! {
hrdja::hrdja! {
koristi std::collections::KartaSažetaka kao Rječnik;

svojstvo KljučVrijednost {
Expand All @@ -42,13 +42,13 @@ hrđa::hrđa! {

ispuna KljučVrijednost za GPKrk {
fn napiši(&suština, ključ: ZnakovniNiz, valeur: ZnakovniNiz) {
dopusti rjecnik = opasno {
neka rjecnik = opasno {
RJECNIK.dohvati_ili_ubaci_uz(Podrazumijevano::podrazumijevano)
};
rjecnik.ubaci(ključ, valeur);
}
fn dohvati(&suština, ključ: ZnakovniNiz) -> Rezultat<Neobavezno<&ZnakovniNiz>, ZnakovniNiz> {
ako dopusti Neki(rjecnik) = opasno { RJECNIK.ko_upuć() } {
ako neka Neki(rjecnik) = opasno { RJECNIK.ko_upuć() } {
URedu(rjecnik.dohvati(&ključ))
} inače {
Kiks("dohvati rjecnik".pretvori())
Expand Down
2 changes: 1 addition & 1 deletion examples/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ edition = "2022"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
hrđa = { path = "../hrdja_proc_macro/" }
hrdja = { path = "../hrdja_proc_macro/" }
14 changes: 7 additions & 7 deletions examples/src/main.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
hrđa::hrđa! {
vanjski kištra hrđa;
hrdja::hrdja! {
vanjski kištra hrdja;

koristi std::collections::KartaSažetaka kao Rječnik;

Expand All @@ -14,13 +14,13 @@ hrđa::hrđa! {

ispuna KljučVrijednost za GPKrk {
fn napiši(&suština, ključ: ZnakovniNiz, valeur: ZnakovniNiz) {
dopusti rjecnik = opasno {
neka rjecnik = opasno {
RJECNIK.dohvati_ili_ubaci_uz(Podrazumijevano::podrazumijevano)
};
rjecnik.ubaci(ključ, valeur);
}
fn dohvati(&suština, ključ: ZnakovniNiz) -> Rezultat<Neobavezno<&ZnakovniNiz>, ZnakovniNiz> {
ako dopusti Neki(rjecnik) = opasno { RJECNIK.ko_upuć() } {
ako neka Neki(rjecnik) = opasno { RJECNIK.ko_upuć() } {
URedu(rjecnik.dohvati(&ključ))
} inače {
Kiks("dohvati rjecnik".pretvori())
Expand Down Expand Up @@ -48,7 +48,7 @@ hrđa::hrđa! {
}

fn glavni() {
dopusti izmjenjiv x = 31;
neka izmjenjiv x = 31;

spari x {
42 => {
Expand All @@ -58,15 +58,15 @@ hrđa::hrđa! {
}

za i u 0..10 {
dopusti val = petlja {
neka val = petlja {
prekini i;
};

dok kaj x < val {
x += 1;
}

x = ako dopusti Neki(resultat) = može_biti(i) {
x = ako neka Neki(resultat) = može_biti(i) {
resultat.odmotaj()
} inače {
12
Expand Down
4 changes: 2 additions & 2 deletions hrdja_proc_macro/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "hrđa"
name = "hrdja"
version = "0.1.0"
edition = "2022"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

Expand Down
4 changes: 2 additions & 2 deletions hrdja_proc_macro/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ fn replace_ident(ident: Ident) -> Option<TokenTree> {
"ako" => "if",
"inače" => "else",
"suština" => "self",
"dopusti" => "let",
"neka" => "let",
"nepokretno" => "static",
"građa" => "struct",
"očekuj" => "expect",
Expand Down Expand Up @@ -116,7 +116,7 @@ fn replace_stream(ts: TokenStream, out: &mut Vec<TokenTree>) {
}

#[proc_macro]
pub fn hrđa(item: TokenStream) -> TokenStream {
pub fn hrdja(item: TokenStream) -> TokenStream {
let mut returned = Vec::new();
replace_stream(item, &mut returned);
let mut out = TokenStream::new();
Expand Down