SYMBOL INDEX (35 symbols across 2 files) FILE: src/chacha/mod.rs type ChaCha20 (line 5) | pub struct ChaCha20 { method new (line 28) | pub fn new(key: Key) -> Self { method encrypt (line 33) | pub fn encrypt(&self, message: &str) -> CipherText { method decrypt (line 42) | pub fn decrypt(&self, ciphertext: &CipherText) -> Result { method apply_cipher_with_nonce (line 50) | fn apply_cipher_with_nonce(&self, message: &Vec, nonce: &Nonce) ->... type CipherText (line 10) | pub struct CipherText { type Key (line 18) | pub struct Key([u32; 8]); method new (line 135) | pub fn new(s: &str) -> Result { type Nonce (line 21) | pub struct Nonce([u32; 3]); method from_str (line 151) | pub fn from_str(s: &str) -> Result { method new (line 165) | pub fn new(n: [u32; 3]) -> Self { type ChaChaState (line 24) | struct ChaChaState(Vec); method new (line 82) | pub fn new(key: &Key, counter: u32, nonce: &Nonce) -> Self { method chacha_block (line 95) | pub fn chacha_block(&mut self) { method quarter_round_state (line 118) | fn quarter_round_state(&mut self, ai: usize, bi: usize, ci: usize, di:... function quarter_round (line 171) | fn quarter_round(a: &mut u32, b: &mut u32, c: &mut u32, d: &mut u32) { function rotl (line 190) | fn rotl(value: u32, shift: u32) -> u32 { function test_full_cycle (line 195) | fn test_full_cycle() { function test_apply_cipher (line 207) | fn test_apply_cipher() { function test_chacha_block (line 225) | fn test_chacha_block() { function test_quarter_round (line 248) | fn test_quarter_round() { FILE: src/elgamal/mod.rs type PubKey (line 11) | pub struct PubKey { method encrypt_point (line 54) | pub fn encrypt_point(&self, m: &Point) -> CipherText { method encrypt_message (line 64) | pub fn encrypt_message(&self, m: &str) -> Result { method from (line 72) | fn from(sk: &SecretKey) -> Self { type SecretKey (line 16) | pub struct SecretKey { method new (line 29) | pub fn new() -> Self { method decrypt_point (line 36) | pub fn decrypt_point(&self, c: &CipherText) -> Point { method decrypt_message (line 43) | pub fn decrypt_message(&self, c: &CipherText) -> Result { type CipherText (line 22) | pub struct CipherText { function embed (line 81) | fn embed(m: &BigInt) -> Result> { function unembed (line 106) | fn unembed(p: &Point) -> BigInt { function sqrt_mod_p (line 113) | fn sqrt_mod_p(n: &BigInt, p: &BigInt) -> Result> { function test_encrypt_message (line 172) | fn test_encrypt_message() { function test_encrypt_point (line 185) | fn test_encrypt_point() {