Class DaciukMihovAutomatonBuilder.State

  • Enclosing class:
    DaciukMihovAutomatonBuilder

    private static final class DaciukMihovAutomatonBuilder.State
    extends java.lang.Object
    DFSA state with char labels on transitions.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private State()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)
      Two states are equal if: they have an identical number of outgoing transitions, labeled with the same labels corresponding outgoing transitions lead to the same states (to states with an identical right-language).
      (package private) DaciukMihovAutomatonBuilder.State getState​(int label)
      Returns the target state of a transition leaving this state and labeled with label .
      (package private) boolean hasChildren()
      Return true if this state has any children (outgoing transitions).
      int hashCode()
      Compute the hash code of the current status of this state.
      (package private) DaciukMihovAutomatonBuilder.State lastChild()
      Return the most recent transitions's target state.
      (package private) DaciukMihovAutomatonBuilder.State lastChild​(int label)
      Return the associated state if the most recent transition is labeled with label.
      (package private) DaciukMihovAutomatonBuilder.State newState​(int label)
      Create a new outgoing transition labeled label and return the newly created target state for this transition.
      private static boolean referenceEquals​(java.lang.Object[] a1, java.lang.Object[] a2)
      Compare two lists of objects for reference-equality.
      (package private) void replaceLastChild​(DaciukMihovAutomatonBuilder.State state)
      Replace the last added outgoing transition's target state with the given state.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • NO_LABELS

        private static final int[] NO_LABELS
        An empty set of labels.
      • labels

        int[] labels
        Labels of outgoing transitions. Indexed identically to states. Labels must be sorted lexicographically.
      • is_final

        boolean is_final
        true if this state corresponds to the end of at least one input sequence.
    • Constructor Detail

      • State

        private State()
    • Method Detail

      • getState

        DaciukMihovAutomatonBuilder.State getState​(int label)
        Returns the target state of a transition leaving this state and labeled with label . If no such transition exists, returns null.
      • equals

        public boolean equals​(java.lang.Object obj)
        Two states are equal if:
        • they have an identical number of outgoing transitions, labeled with the same labels
        • corresponding outgoing transitions lead to the same states (to states with an identical right-language).
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Compute the hash code of the current status of this state.
        Overrides:
        hashCode in class java.lang.Object
      • hasChildren

        boolean hasChildren()
        Return true if this state has any children (outgoing transitions).
      • newState

        DaciukMihovAutomatonBuilder.State newState​(int label)
        Create a new outgoing transition labeled label and return the newly created target state for this transition.
      • replaceLastChild

        void replaceLastChild​(DaciukMihovAutomatonBuilder.State state)
        Replace the last added outgoing transition's target state with the given state.
      • referenceEquals

        private static boolean referenceEquals​(java.lang.Object[] a1,
                                               java.lang.Object[] a2)
        Compare two lists of objects for reference-equality.