pub fn from_char(c: char) -> Option<Self> {
        Some(Node::ringed(match c {
            'o' => return Some(Node::Unringed),
            's' => return Some(Node::snub(T::ONE)),
            'v' => (T::SQRT_5 - T::ONE) / T::TWO,
            'x' => T::ONE,
            'q' => T::SQRT_2,
            'f' => (T::SQRT_5 + T::ONE) / T::TWO,
            'h' => T::SQRT_3,
            'k' => (T::SQRT_2 + T::TWO).fsqrt(),
            'u' => T::TWO,
            'w' => T::SQRT_2 + T::ONE,
            'F' => (T::SQRT_5 + T::THREE) / T::TWO,
            'e' => T::SQRT_3 + T::ONE,
            'Q' => T::SQRT_2 * T::TWO,
            'd' => T::THREE,
            'V' => T::SQRT_5 + T::ONE,
            'U' => T::SQRT_2 + T::TWO,
            'A' => (T::SQRT_5 + T::ONE) / T::FOUR + T::ONE,
            'X' => T::SQRT_2 * T::TWO + T::ONE,
            'B' => T::SQRT_5 + T::TWO,
            _ => return None,
        }))
    }
/// Converts the character into a node value, using [Wendy Krieger's
/// scheme](https://polytope.miraheze.org/wiki/Coxeter_diagram#Different_edge_lengths).
///
/// # Todo
/// Make this customizable?
Converts the character into a node value, using [Wendy Krieger's
scheme].
Converts the character into a node value using [ Wendy Krieger ' s scheme ] .
pub fn from_char(c: char) -> Option<Self> {
        Some(Node::ringed(match c {
            'o' => return Some(Node::Unringed),
            's' => return Some(Node::snub(T::ONE)),
            'v' => (T::SQRT_5 - T::ONE) / T::TWO,
            'x' => T::ONE,
            'q' => T::SQRT_2,
            'f' => (T::SQRT_5 + T::ONE) / T::TWO,
            'h' => T::SQRT_3,
            'k' => (T::SQRT_2 + T::TWO).fsqrt(),
            'u' => T::TWO,
            'w' => T::SQRT_2 + T::ONE,
            'F' => (T::SQRT_5 + T::THREE) / T::TWO,
            'e' => T::SQRT_3 + T::ONE,
            'Q' => T::SQRT_2 * T::TWO,
            'd' => T::THREE,
            'V' => T::SQRT_5 + T::ONE,
            'U' => T::SQRT_2 + T::TWO,
            'A' => (T::SQRT_5 + T::ONE) / T::FOUR + T::ONE,
            'X' => T::SQRT_2 * T::TWO + T::ONE,
            'B' => T::SQRT_5 + T::TWO,
            _ => return None,
        }))
    }
pub fn from_char ( c : char ) -> Option < Self > { Some ( Node :: ringed ( match c { 'o' => return Some ( Node :: Unringed ) , 's' => return Some ( Node :: snub ( T :: ONE ) ) , 'v' => ( T :: SQRT_5 - T :: ONE ) / T :: TWO , 'x' => T :: ONE , 'q' => T :: SQRT_2 , 'f' => ( T :: SQRT_5 + T :: ONE ) / T :: TWO , 'h' => T :: SQRT_3 , 'k' => ( T :: SQRT_2 + T :: TWO ) . fsqrt ( ) , 'u' => T :: TWO , 'w' => T :: SQRT_2 + T :: ONE , 'F' => ( T :: SQRT_5 + T :: THREE ) / T :: TWO , 'e' => T :: SQRT_3 + T :: ONE , 'Q' => T :: SQRT_2 * T :: TWO , 'd' => T :: THREE , 'V' => T :: SQRT_5 + T :: ONE , 'U' => T :: SQRT_2 + T :: TWO , 'A' => ( T :: SQRT_5 + T :: ONE ) / T :: FOUR + T :: ONE , 'X' => T :: SQRT_2 * T :: TWO + T :: ONE , 'B' => T :: SQRT_5 + T :: TWO , _ => return None , } ) ) }
Converts the character into a node value, using [Wendy Krieger's
scheme](https://polytope.miraheze.org/wiki/Coxeter_diagram#Different_edge_lengths).
Converts the character into a node value using [ Wendy Krieger ' s scheme ] ( https : // polytope . miraheze . org / wiki / Coxeter_diagram#Different_edge_lengths ) .
c
char
c
char
todo
None