introduce bitloops
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
package puzzle;
|
||||
|
||||
import module java.base;
|
||||
import anno.GenerateNeighbor;
|
||||
import anno.GenerateNeighbors;
|
||||
import anno.Shaped;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import lombok.experimental.Accessors;
|
||||
@@ -13,29 +16,28 @@ import static puzzle.SwedishGenerator.*;
|
||||
|
||||
public final class Masker {
|
||||
|
||||
public static final rci[] IT = Neighbors9x8.IT;
|
||||
public static final long[] PATH_LO = Neighbors9x8.PATH_LO;
|
||||
public static final long[] PATH_HI = Neighbors9x8.PATH_HI;
|
||||
public static final long MASK_LO = -1L;
|
||||
public static final long MASK_HI = Neighbors9x8.MASK_HI;//(1L << (SIZE - 64)) - 1;
|
||||
public static final int MIN_LEN = Neighbors9x8.MIN_LEN;//Config.MIN_LEN;
|
||||
public static final int STACK_SIZE = 128;
|
||||
public static final int C = Neighbors9x8.C;
|
||||
public static final int R = Neighbors9x8.R;
|
||||
public static final double SIZED = Neighbors9x8.SIZED;// ~18
|
||||
private static final long[] NBR_LO = Neighbors9x8.NBR_LO;
|
||||
private static final long[] NBR_HI = Neighbors9x8.NBR_HI;
|
||||
private final Rng rng;
|
||||
private final int[] stack;
|
||||
private final Clues cache;
|
||||
private final int[] activeCIdx = new int[Neighbors9x8.SIZE];
|
||||
private final long[] activeSLo = new long[Neighbors9x8.SIZE];
|
||||
private final long[] activeSHi = new long[Neighbors9x8.SIZE];
|
||||
private final long[] adjLo = new long[Neighbors9x8.SIZE];
|
||||
private final long[] adjHi = new long[Neighbors9x8.SIZE];
|
||||
private final int[] rCount = new int[Neighbors9x8.R];
|
||||
private final int[] cCount = new int[Neighbors9x8.C];
|
||||
|
||||
@Shaped public static final rci[] IT = Neighbors9x8.IT;
|
||||
@Shaped public static final long[] PATH_LO = Neighbors9x8.PATH_LO;
|
||||
@Shaped public static final long[] PATH_HI = Neighbors9x8.PATH_HI;
|
||||
@Shaped public static final long MASK_LO = -1L;
|
||||
@Shaped public static final long MASK_HI = Neighbors9x8.MASK_HI;//(1L << (SIZE - 64)) - 1;
|
||||
@Shaped public static final int MIN_LEN = Neighbors9x8.MIN_LEN;//Config.MIN_LEN;
|
||||
@Shaped public static final int C = Neighbors9x8.C;
|
||||
@Shaped public static final int R = Neighbors9x8.R;
|
||||
@Shaped public static final double SIZED = Neighbors9x8.SIZED;// ~18
|
||||
@Shaped private static final long[] NBR_LO = Neighbors9x8.NBR_LO;
|
||||
@Shaped private static final long[] NBR_HI = Neighbors9x8.NBR_HI;
|
||||
@Shaped private final int[] activeCIdx = new int[Neighbors9x8.SIZE];
|
||||
@Shaped private final long[] activeSLo = new long[Neighbors9x8.SIZE];
|
||||
@Shaped private final long[] activeSHi = new long[Neighbors9x8.SIZE];
|
||||
@Shaped private final long[] adjLo = new long[Neighbors9x8.SIZE];
|
||||
@Shaped private final long[] adjHi = new long[Neighbors9x8.SIZE];
|
||||
@Shaped private final int[] rCount = new int[Neighbors9x8.R];
|
||||
@Shaped private final int[] cCount = new int[Neighbors9x8.C];
|
||||
private final Rng rng;
|
||||
private final int[] stack;
|
||||
private final Clues cache;
|
||||
public static final int STACK_SIZE = 128;
|
||||
public Masker(Rng rng, int[] stack, Clues cache) {
|
||||
this.rng = rng;
|
||||
this.stack = stack;
|
||||
|
||||
Reference in New Issue
Block a user