Interface NameGenerator

  • All Superinterfaces:
    java.io.Serializable
    All Known Implementing Classes:
    DefaultNameGenerator, RandomNameGenerator

    public interface NameGenerator
    extends java.io.Serializable
    A class that generates unique JavaScript variable/property names.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      NameGenerator clone​(java.util.Set<java.lang.String> reservedNames, java.lang.String prefix, char[] reservedCharacters)
      Returns a clone of this NameGenerator, reconfigured and reset.
      java.lang.String generateNextName()
      Generates the next name.
      void reset​(java.util.Set<java.lang.String> reservedNames, java.lang.String prefix, char[] reservedCharacters)
      Reconfigures this NameGenerator, and resets it to the initial state.
      void reset​(java.util.Set<java.lang.String> reservedNames, java.lang.String prefix, char[] reservedFirstCharacters, char[] reservedNonFirstCharacters)
      Reconfigures this NameGenerator, and resets it to the initial state.
    • Method Detail

      • reset

        void reset​(java.util.Set<java.lang.String> reservedNames,
                   java.lang.String prefix,
                   @Nullable
                   char[] reservedCharacters)
        Reconfigures this NameGenerator, and resets it to the initial state.
        Parameters:
        reservedNames - set of names that are reserved; generated names will not include these names. This set is referenced rather than copied, so changes to the set will be reflected in how names are generated.
        prefix - all generated names begin with this prefix.
        reservedCharacters - If specified these characters won't be used in generated names
      • reset

        void reset​(java.util.Set<java.lang.String> reservedNames,
                   java.lang.String prefix,
                   @Nullable
                   char[] reservedFirstCharacters,
                   @Nullable
                   char[] reservedNonFirstCharacters)
        Reconfigures this NameGenerator, and resets it to the initial state.
        Parameters:
        reservedNames - set of names that are reserved; generated names will not include these names. This set is referenced rather than copied, so changes to the set will be reflected in how names are generated.
        prefix - all generated names begin with this prefix.
        reservedFirstCharacters - If specified these characters won't be used as the first character in generated names
        reservedNonFirstCharacters - If specified these characters won't be used for characters (after the first) in generated names
      • clone

        NameGenerator clone​(java.util.Set<java.lang.String> reservedNames,
                            java.lang.String prefix,
                            @Nullable
                            char[] reservedCharacters)
        Returns a clone of this NameGenerator, reconfigured and reset.
      • generateNextName

        java.lang.String generateNextName()
        Generates the next name.