From efdee600191c6b4c20273778da9e4111d3890a8f Mon Sep 17 00:00:00 2001 From: Gavin Panella Date: Sat, 10 Sep 2022 22:11:01 +0200 Subject: [PATCH] upgrade dependencies --- Cargo.lock | 92 +++++++++++++++++++++--------------------- Cargo.toml | 20 ++++----- src/parser.rs | 28 ++++++------- tests/generator/mod.rs | 4 +- 4 files changed, 69 insertions(+), 75 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b8311c3..c8340e9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,16 +1,30 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +version = 3 + +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" + [[package]] name = "cfg-if" -version = "0.1.10" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "getrandom" -version = "0.1.14" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb" +checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" dependencies = [ "cfg-if", "libc", @@ -19,30 +33,31 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.72" +version = "0.2.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9f8082297d534141b30c8d39e9b1773713ab50fdbe4ff30f750d063b3bfd701" +checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5" [[package]] name = "logos" -version = "0.9.7" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f494e22d293fa05db60b3fd95fb30e9409feb5672b56ce6f250f99d9fbae6b93" +checksum = "bf8b031682c67a8e3d5446840f9573eb7fe26efe7ec8d195c9ac4c0647c502f1" dependencies = [ "logos-derive", ] [[package]] name = "logos-derive" -version = "0.9.7" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13ff1b1068db09ee21d12baf55eccc0900a781a735273e0a606f6f4fbb32a322" +checksum = "a1d849148dbaf9661a6151d1ca82b13bb4c4c128146a88d05253b38d4e2f496c" dependencies = [ + "beef", + "fnv", "proc-macro2", "quote", "regex-syntax", "syn", - "utf8-ranges", ] [[package]] @@ -53,40 +68,38 @@ checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea" [[package]] name = "proc-macro2" -version = "0.4.30" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" +checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab" dependencies = [ - "unicode-xid", + "unicode-ident", ] [[package]] name = "quote" -version = "0.6.13" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" +checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" dependencies = [ "proc-macro2", ] [[package]] name = "rand" -version = "0.7.3" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ - "getrandom", "libc", "rand_chacha", "rand_core", - "rand_hc", ] [[package]] name = "rand_chacha" -version = "0.2.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", "rand_core", @@ -94,22 +107,13 @@ dependencies = [ [[package]] name = "rand_core" -version = "0.5.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" dependencies = [ "getrandom", ] -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core", -] - [[package]] name = "regex-syntax" version = "0.6.18" @@ -126,29 +130,23 @@ dependencies = [ [[package]] name = "syn" -version = "0.15.44" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" +checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13" dependencies = [ "proc-macro2", "quote", - "unicode-xid", + "unicode-ident", ] [[package]] -name = "unicode-xid" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" - -[[package]] -name = "utf8-ranges" -version = "1.0.4" +name = "unicode-ident" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba" +checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf" [[package]] name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" +version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" diff --git a/Cargo.toml b/Cargo.toml index a21457a..b887d16 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,19 +1,19 @@ [package] -name = "rustomaton" -version = "0.2.1" authors = ["Pierre Gimalac "] -edition = "2018" +categories = ["algorithms"] description = "A small Rust library for automaton (DFA, NFA, Regex) manipulation." -readme = "README.md" +edition = "2018" +exclude = ["tests"] homepage = "https://github.com/pgimalac/rustomaton" -repository = "https://github.com/pgimalac/rustomaton" -license = "MIT" keywords = ["automaton", "dfa", "nfa", "regex"] -categories = ["algorithms"] -exclude = ["tests"] +license = "MIT" +name = "rustomaton" +readme = "README.md" +repository = "https://github.com/pgimalac/rustomaton" +version = "0.2.1" [dependencies] -logos = "0.9.7" +logos = "0.12.1" [dev-dependencies] -rand = "0.7.3" +rand = "0.8.5" diff --git a/src/parser.rs b/src/parser.rs index 66b2097..42487cc 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -5,37 +5,34 @@ use std::collections::{BTreeSet, VecDeque}; /// The token used by [`logos`](/logos/index.html`]). #[derive(Logos, Debug, PartialEq, Clone)] pub enum Token { - #[end] - End, - #[error] Error, - #[token = "|"] + #[token("|")] Union, - #[token = "("] + #[token("(")] Lpar, - #[token = ")"] + #[token(")")] Rpar, - #[token = "."] + #[token(".")] Dot, - #[token = "*"] + #[token("*")] Kleene, - #[token = "?"] + #[token("?")] Question, - #[token = "+"] + #[token("+")] Plus, - #[token = "𝜀"] + #[token("𝜀")] Epsilon, - #[regex = "[^|+().*?𝜀]"] + #[regex("[^|+().*?𝜀]")] Letter, } @@ -57,9 +54,8 @@ pub(crate) fn tokens(s: &str) -> VecDeque<(Token, &str)> { let mut lexer = Token::lexer(s); let mut tokens = VecDeque::new(); - while lexer.token != Token::End { - tokens.push_back((lexer.token.clone(), lexer.slice())); - lexer.advance(); + while let Some(token) = lexer.next() { + tokens.push_back((token.clone(), lexer.slice())); } tokens @@ -158,7 +154,7 @@ pub(crate) fn read_concat( "Unexpected {}", tokens[0].1.chars().next().unwrap() )); - } else if x == Rpar || x == Union || x == End { + } else if x == Rpar || x == Union { break; } else { unreachable!() diff --git a/tests/generator/mod.rs b/tests/generator/mod.rs index 35a0c42..e3a6eed 100644 --- a/tests/generator/mod.rs +++ b/tests/generator/mod.rs @@ -22,7 +22,7 @@ pub fn new_generator(alphabet: HashSet, max_depth: u8) -> Generator { impl Generator { fn random_with_rng(alphabet: &[char], rng: &mut ThreadRng) -> String { let alphalen = alphabet.len(); - let n = rng.gen_range(0, alphalen + 2); + let n = rng.gen_range(0..alphalen + 2); match n.cmp(&alphalen) { Equal => ".".to_string(), @@ -41,7 +41,7 @@ impl Generator { } const TOTAL: u8 = 7; - let choice = self.rng.gen_range(0, TOTAL); + let choice = self.rng.gen_range(0..TOTAL); self.actual_depth += 1; let rec1 = self.run();