Class ATNConfigSet.ConfigHashSet

  • All Implemented Interfaces:
    Iterable<ATNConfig>, Collection<ATNConfig>, Set<ATNConfig>
    Enclosing class:
    ATNConfigSet

    public static class ATNConfigSet.ConfigHashSet
    extends ATNConfigSet.AbstractConfigHashSet
    The reason that we need this is because we don't want the hash map to use the standard hash code and equals. We need all configurations with the same (s,i,_,semctx) to be equal. Unfortunately, this key effectively doubles the number of objects associated with ATNConfigs. The other solution is to use a hash table that lets us specify the equals/hashcode operation.
    • Constructor Detail

      • ConfigHashSet

        public ConfigHashSet()