bspkrs icon

scanner debugging is fun

bspkrs | PRO | 04/02/14 02:41:14 PM UTC | 0 ⭐ | 375 👁️ | Never ⏰ | []
Java |

1.6 KB

|

None

|

0 👍

/

0 👎

// example lines:
// net/minecraft/util/ChunkCoordinates=CL_00001555
// net/minecraft/world/chunk/storage/AnvilChunkLoader.func_75816_a(Lnet/minecraft/world/World;Lnet/minecraft/world/chunk/Chunk;)V=net/minecraft/world/MinecraftException,java/io/IOException|p_75816_1_,p_75816_2_
// net/minecraft/world/biome/BiomeGenMutated.func_150571_c(III)I=|p_150571_1_,p_150571_2_,p_150571_3_
// net/minecraft/world/chunk/storage/AnvilChunkLoader.func_75818_b()V=|
// net/minecraft/server/MinecraftServer.func_145747_a(Lnet/minecraft/util/IChatComponent;)V=|p_145747_1_
// this line is not being read for some reason... ^^^ :(
 
Scanner in = new Scanner(new FileReader(f));
try
{
    while (in.hasNextLine())
    {
        if (in.hasNext("#"))
        {
            in.nextLine();
            continue;
        }
        
        in.useDelimiter("\\.");
        String srgOwner = in.next();
        in.useDelimiter("\\(");
        String srgName = in.next().substring(1);
        in.useDelimiter("=");
        String descriptor = in.next();
        in.useDelimiter("\\|");
        String excs = in.next().substring(1);
        String params = in.nextLine().substring(1);
        
        ExcData toAdd = new ExcData(srgOwner, srgName, descriptor,
                (excs.length() > 0 ? excs.split(",") : new String[0]),
                (params.length() > 0 ? params.split(",") : new String[0]));
        
        srgMethodName2ExcData.put(srgName, toAdd);
        
        for (String parameter : toAdd.getParameters())
            srgParamName2ExcData.put(parameter, toAdd);
    }
}
finally
{
    in.close();
}

Comments