mirror of
https://github.com/revanced/revanced-integrations.git
synced 2024-06-01 19:06:29 +02:00
0cbad98205
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
35 lines
914 B
Java
35 lines
914 B
Java
package app.revanced.integrations.youtube;
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
/**
|
|
* Text pattern searching using a prefix tree (trie).
|
|
*/
|
|
public final class StringTrieSearch extends TrieSearch<String> {
|
|
|
|
private static final class StringTrieNode extends TrieNode<String> {
|
|
StringTrieNode() {
|
|
super();
|
|
}
|
|
StringTrieNode(char nodeCharacterValue) {
|
|
super(nodeCharacterValue);
|
|
}
|
|
@Override
|
|
TrieNode<String> createNode(char nodeValue) {
|
|
return new StringTrieNode(nodeValue);
|
|
}
|
|
@Override
|
|
char getCharValue(String text, int index) {
|
|
return text.charAt(index);
|
|
}
|
|
@Override
|
|
int getTextLength(String text) {
|
|
return text.length();
|
|
}
|
|
}
|
|
|
|
public StringTrieSearch(@NonNull String... patterns) {
|
|
super(new StringTrieNode(), patterns);
|
|
}
|
|
}
|