FileToIdConverter.java

net.minecraft.resources.FileToIdConverter

信息

  • 全限定名:net.minecraft.resources.FileToIdConverter
  • 类型:public record
  • 包:net.minecraft.resources
  • 源码路径:src/main/java/net/minecraft/resources/FileToIdConverter.java
  • 起始行号:L10
  • 职责:

    TODO

字段/常量

内部类/嵌套类型

构造器

方法

下面的方法块按源码顺序生成。

public static FileToIdConverter json(String prefix) @ L11

  • 方法名:json
  • 源码定位:L11
  • 返回类型:FileToIdConverter
  • 修饰符:public static

参数:

  • prefix: String

说明:

TODO

public static FileToIdConverter registry(ResourceKey<?extends Registry<?>> registry) @ L15

  • 方法名:registry
  • 源码定位:L15
  • 返回类型:FileToIdConverter
  • 修饰符:public static

参数:

  • registry: ResourceKey>

说明:

TODO

public Identifier idToFile(Identifier id) @ L19

  • 方法名:idToFile
  • 源码定位:L19
  • 返回类型:Identifier
  • 修饰符:public

参数:

  • id: Identifier

说明:

TODO

public Identifier fileToId(Identifier file) @ L23

  • 方法名:fileToId
  • 源码定位:L23
  • 返回类型:Identifier
  • 修饰符:public

参数:

  • file: Identifier

说明:

TODO

public boolean extensionMatches(Identifier id) @ L28

  • 方法名:extensionMatches
  • 源码定位:L28
  • 返回类型:boolean
  • 修饰符:public

参数:

  • id: Identifier

说明:

TODO

public Map<Identifier,Resource> listMatchingResources(ResourceManager manager) @ L32

  • 方法名:listMatchingResources
  • 源码定位:L32
  • 返回类型:Map<Identifier,Resource>
  • 修饰符:public

参数:

  • manager: ResourceManager

说明:

TODO

public Map<Identifier,List<Resource>> listMatchingResourceStacks(ResourceManager manager) @ L36

  • 方法名:listMatchingResourceStacks
  • 源码定位:L36
  • 返回类型:Map<Identifier,List>
  • 修饰符:public

参数:

  • manager: ResourceManager

说明:

TODO

代码

public record FileToIdConverter(String prefix, String extension) {
    public static FileToIdConverter json(String prefix) {
        return new FileToIdConverter(prefix, ".json");
    }
 
    public static FileToIdConverter registry(ResourceKey<? extends Registry<?>> registry) {
        return json(Registries.elementsDirPath(registry));
    }
 
    public Identifier idToFile(Identifier id) {
        return id.withPath(this.prefix + "/" + id.getPath() + this.extension);
    }
 
    public Identifier fileToId(Identifier file) {
        String path = file.getPath();
        return file.withPath(path.substring(this.prefix.length() + 1, path.length() - this.extension.length()));
    }
 
    public boolean extensionMatches(Identifier id) {
        return id.getPath().endsWith(this.extension);
    }
 
    public Map<Identifier, Resource> listMatchingResources(ResourceManager manager) {
        return manager.listResources(this.prefix, this::extensionMatches);
    }
 
    public Map<Identifier, List<Resource>> listMatchingResourceStacks(ResourceManager manager) {
        return manager.listResourceStacks(this.prefix, this::extensionMatches);
    }
}

引用的其他类