Werk implementatie bij op basis van die van rouille en voeg nieuwe sleutelwoorden toe

This commit is contained in:
Jeroen Hoegen Dijkhof 2021-09-11 16:30:28 +02:00
parent ac90050ec4
commit 33551d76a0
No known key found for this signature in database
GPG Key ID: 1B26DDB69F21CB8C
2 changed files with 16 additions and 6 deletions

View File

@ -5,7 +5,7 @@ roest::roest! {
karaktereigenschap SleutelWaarde {
functie schrijf(&zelf, sleutel: Keten, waarde: Keten);
functie lees(&zelf, sleutel: Keten) -> Mogelijkheid<&Keten>;
functie lees(&zelf, sleutel: Keten) -> Resultaat<Mogelijkheid<&Keten>, Keten>;
}
vast veranderlijk WOORDENBOEK: Mogelijkheid<Wbk<Keten, Keten>> = Geen;
@ -19,11 +19,16 @@ roest::roest! {
};
wk.voeg_in(sleutel, waarde);
}
functie lees(&zelf, sleutel: Keten) -> Mogelijkheid<&Keten> {
laat wk = gevaarlijk {
WOORDENBOEK.verkrijg_of_voeg_toe_met(Standaard::standaard)
};
wk.verkrijg(&sleutel)
functie lees(&zelf, sleutel: Keten) -> Resultaat<Mogelijkheid<&Keten>, Keten> {
// laat wk = gevaarlijk {
// WOORDENBOEK.verkrijg_of_voeg_toe_met(Standaard::standaard)
// };
// wk.verkrijg(&sleutel)
als laat Enige(wbk) = gevaarlijk { WOORDENBOEK.als_verw() } {
Goed(wbk.verkrijg(&sleutel))
} anders {
Ft("ophalen uit woordenboek".tot())
}
}
}

View File

@ -61,6 +61,11 @@ fn replace_ident(ident: Ident) -> Option<TokenTree> {
"gebruik" => "use",
"waar" => "true",
"opsomming" => "enum",
"tot" => "into",
"verw" => "ref",
"als_verw" => "as_ref",
"onbereikbare_code" => "unreachable_code",
"sta_toe" => "allow",
_ => &ident_str,
};