pub struct TrieNode { /* private fields */ }
Expand description
Trie node. It is a tree data structure used for efficient retrieval of a key in a large dataset.
§Examples
use sensitive_rs::TrieNode;
let mut node = TrieNode::new('a', false);
assert!(!node.is_root_node());
assert!(!node.is_end())
Represents a node in the Trie data structure.
Each node contains a character, a flag indicating whether it is the end of a word, a flag indicating whether it is the root node, and a hashmap pointing to its child nodes.
The node is thread-safe.
§Example
use sensitive_rs::TrieNode;
let node = TrieNode::new('a', false);
§Errors
Returns an error if the character is not a valid ASCII character.
§Panics
Panics if the character is not a valid ASCII character.
Implementations§
Source§impl TrieNode
impl TrieNode
Sourcepub fn new(ch: char, is_root: bool) -> Arc<Self>
pub fn new(ch: char, is_root: bool) -> Arc<Self>
Creates a new Trie node.
§Arguments
ch
: The character associated with the node.is_root
: A boolean indicating whether the node is the root node.
§Returns
Returns an Arc
containing the new node.
§Example
use sensitive_rs::TrieNode;
let node = TrieNode::new('a', false);
§Panics
Panics if the character is not a valid ASCII character.
Sourcepub fn is_root_node(&self) -> bool
pub fn is_root_node(&self) -> bool
Checks if the current node is the root node.
§Returns
Returns a boolean indicating whether the current node is the root node.
§Example
use sensitive_rs::TrieNode;
let node = TrieNode::new('a', true);
assert!(node.is_root_node());
§Panics
Panics if the character is not a valid ASCII character.
§Errors
Returns an error if the character is not a valid ASCII character.
Sourcepub fn is_end(&self) -> bool
pub fn is_end(&self) -> bool
Checks if the current node marks the end of a word.
§Returns
Returns a boolean indicating whether the current node marks the end of a word.
§Example
use sensitive_rs::TrieNode;
let node = TrieNode::new('a', false);
assert!(!node.is_end());
§Panics
Panics if the character is not a valid ASCII character.
§Errors
Returns an error if the character is not a valid ASCII character.