Class BasicAutomata


  • public final class BasicAutomata
    extends Object
    Construction of basic automata.
    • Method Detail

      • makeEmpty

        public static Automaton makeEmpty()
        Returns a new (deterministic) automaton with the empty language.
      • makeEmptyString

        public static Automaton makeEmptyString()
        Returns a new (deterministic) automaton that accepts only the empty string.
      • makeAnyString

        public static Automaton makeAnyString()
        Returns a new (deterministic) automaton that accepts all strings.
      • makeAnyChar

        public static Automaton makeAnyChar()
        Returns a new (deterministic) automaton that accepts any single character.
      • makeChar

        public static Automaton makeChar​(char c)
        Returns a new (deterministic) automaton that accepts a single character of the given value.
      • makeCharRange

        public static Automaton makeCharRange​(char min,
                                              char max)
        Returns a new (deterministic) automaton that accepts a single char whose value is in the given interval (including both end points).
      • makeCharSet

        public static Automaton makeCharSet​(String set)
        Returns a new (deterministic) automaton that accepts a single character in the given set.
      • makeInterval

        public static Automaton makeInterval​(int min,
                                             int max,
                                             int digits)
                                      throws IllegalArgumentException
        Returns a new automaton that accepts strings representing decimal non-negative integers in the given interval.
        Parameters:
        min - minimal value of interval
        max - maximal value of inverval (both end points are included in the interval)
        digits - if >0, use fixed number of digits (strings must be prefixed by 0's to obtain the right length) - otherwise, the number of digits is not fixed
        Throws:
        IllegalArgumentException - if min>max or if numbers in the interval cannot be expressed with the given fixed number of digits
      • makeString

        public static Automaton makeString​(String s)
        Returns a new (deterministic) automaton that accepts the single given string.
      • makeStringUnion

        public static Automaton makeStringUnion​(CharSequence... strings)
        Returns a new (deterministic and minimal) automaton that accepts the union of the given set of strings. The input character sequences are internally sorted in-place, so the input array is modified.
        See Also:
        StringUnionOperations
      • makeMaxInteger

        public static Automaton makeMaxInteger​(String n)
        Constructs automaton that accept strings representing nonnegative integers that are not larger than the given value.
        Parameters:
        n - string representation of maximum value
      • makeMinInteger

        public static Automaton makeMinInteger​(String n)
        Constructs automaton that accept strings representing nonnegative integers that are not less that the given value.
        Parameters:
        n - string representation of minimum value
      • makeTotalDigits

        public static Automaton makeTotalDigits​(int i)
        Constructs automaton that accept strings representing decimal numbers that can be written with at most the given number of digits. Surrounding whitespace is permitted.
        Parameters:
        i - max number of necessary digits
      • makeFractionDigits

        public static Automaton makeFractionDigits​(int i)
        Constructs automaton that accept strings representing decimal numbers that can be written with at most the given number of digits in the fraction part. Surrounding whitespace is permitted.
        Parameters:
        i - max number of necessary fraction digits
      • makeIntegerValue

        public static Automaton makeIntegerValue​(String value)
        Constructs automaton that accept strings representing the given integer. Surrounding whitespace is permitted.
        Parameters:
        value - string representation of integer
      • makeDecimalValue

        public static Automaton makeDecimalValue​(String value)
        Constructs automaton that accept strings representing the given decimal number. Surrounding whitespace is permitted.
        Parameters:
        value - string representation of decimal number
      • makeStringMatcher

        public static Automaton makeStringMatcher​(String s)
        Constructs deterministic automaton that matches strings that contain the given substring.