SearchTree.java
net.minecraft.client.searchtree.SearchTree
信息
- 全限定名:net.minecraft.client.searchtree.SearchTree
- 类型:public interface
- 包:net.minecraft.client.searchtree
- 源码路径:src/main/java/net/minecraft/client/searchtree/SearchTree.java
- 起始行号:L12
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
static <T> SearchTree<T> empty() @ L13
- 方法名:empty
- 源码定位:L13
- 返回类型:
SearchTree - 修饰符:static
参数:
- 无
说明:
TODO
static <T> SearchTree<T> plainText(List<T> elements, Function<T,Stream<String>> idGetter) @ L17
- 方法名:plainText
- 源码定位:L17
- 返回类型:
SearchTree - 修饰符:static
参数:
- elements: List
- idGetter: Function<T,Stream
>
说明:
TODO
List<T> search(String text) @ L32
- 方法名:search
- 源码定位:L32
- 返回类型:List
- 修饰符:package-private
参数:
- text: String
说明:
TODO
代码
@FunctionalInterface
@OnlyIn(Dist.CLIENT)
public interface SearchTree<T> {
static <T> SearchTree<T> empty() {
return text -> List.of();
}
static <T> SearchTree<T> plainText(List<T> elements, Function<T, Stream<String>> idGetter) {
if (elements.isEmpty()) {
return empty();
} else {
SuffixArray<T> tree = new SuffixArray<>();
for (T element : elements) {
idGetter.apply(element).forEach(elementId -> tree.add(element, elementId.toLowerCase(Locale.ROOT)));
}
tree.generate();
return tree::search;
}
}
List<T> search(String text);
}引用的其他类
- 无