kociemba 0.5.1

crate for solving the 3x3 Rubik's cube with Kociemba's two phase algorithm
Documentation
use crate::cubie::Corner::{self, *};
use crate::cubie::Edge::{self, *};
use crate::facelet::Color;
use crate::moves::Move::{self, *};

pub const ALL_CORNERS: [Corner; 8] = [URF, UFL, ULB, UBR, DFR, DLF, DBL, DRB];
pub const ALL_EDGES: [Edge; 12] = [UR, UF, UL, UB, DR, DF, DL, DB, FR, FL, BL, BR];
pub const ALL_COLORS: [Color; 6] = [Color::U, Color::R, Color::F, Color::D, Color::L, Color::B];
pub const ALL_MOVES: [Move; 18] = [
    U, U2, U3, R, R2, R3, F, F2, F3, D, D2, D3, L, L2, L3, B, B2, B3,
];

pub const SOLVED: u16 = 0;

pub const N_PERM_4: usize = 24;
pub const N_CHOOSE_8_4: usize = 70;
/// number of cube symmetries of full group Oh
pub const N_SYM: usize = 48;
/// number of possible face moves
pub const N_MOVE: usize = 18;
/// 3^7 possible corner orientations in phase 1
pub const N_TWIST: usize = 2187;
/// Number of symmetries of subgroup D4h
pub const N_SYM_D4H: usize = 16;
/// 8! permutations of the edges in the U-face and D-face in phase 2
pub const N_UD_EDGES: usize = 40320;
/// 2^11 possible edge orientations in phase 1
pub const N_FLIP: usize = 2048;
/// 12*11*10*9 possible positions of the FR, FL, BL, BR edges in phase 1
pub const N_SLICE_SORTED: usize = 11880;
/// we ignore the permutation of FR, FL, BL, BR in phase 1
pub const N_SLICE: usize = N_SLICE_SORTED / N_PERM_4;
/// number of equivalence classes for combined flip+slice concerning symmetry group D4h
pub const N_FLIPSLICE_CLASS: usize = 64430;
/// 8! corner permutations in phase 2
pub const N_CORNERS: usize = 40320;
/// number of equivalence classes concerning symmetry group D4h
pub const N_CORNERS_CLASS: usize = 2768;
/// number of different positions of the edges UR, UF, UL and UB in phase 2
pub const N_U_EDGES_PHASE2: usize = 1680;