diff options
| author | nsfisis <nsfisis@gmail.com> | 2021-06-19 21:09:57 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2021-06-19 21:10:36 +0900 |
| commit | 4dcf3dde286bb2602f2be96077b02d0947353e18 (patch) | |
| tree | ff30b16c9ee204f27140087181b9cad84c3a6b07 /src/lib.rs | |
| parent | f9f462cd2feb811891fe4e4919534cbdb6dcba2c (diff) | |
| download | rand-word-gen-4dcf3dde286bb2602f2be96077b02d0947353e18.tar.gz rand-word-gen-4dcf3dde286bb2602f2be96077b02d0947353e18.tar.zst rand-word-gen-4dcf3dde286bb2602f2be96077b02d0947353e18.zip | |
Add '--prefix' option
Diffstat (limited to 'src/lib.rs')
| -rw-r--r-- | src/lib.rs | 11 |
1 files changed, 9 insertions, 2 deletions
@@ -13,9 +13,16 @@ impl Model { Model { chars } } - pub fn generate<Rng: RngCore>(&self, rng: &mut Rng, len: usize) -> String { + pub fn generate<Rng: RngCore>( + &self, + rng: &mut Rng, + len: usize, + first_char: Option<char>, + ) -> String { let mut result = String::with_capacity(len); - let mut prefix = NUM_OF_LETTERS; + let mut prefix = first_char + .map(|c| c as usize - b'a' as usize) + .unwrap_or(NUM_OF_LETTERS); for _ in 0..len { let chars = &self.chars[prefix]; let c = select_one_char(rng, &chars); |
