fn add_keyword(&mut self, keyword: impl AsRef<str>) {
        let case_insensitive = self.case_insensitive;
        let mut node = self;
        let mut keyword = String::from(keyword.as_ref());
        if case_insensitive {
            keyword = keyword.to_lowercase();
        }

        for char in keyword.chars() {
            node = node
                .children
                .entry(char)
                .or_insert(Node::new(case_insensitive));
        }
        node.keywords.push(keyword);
    }
Add a single keyword to the tree.
autocorrect/src/keyword.rs