Class LargePrefixedNameSet

java.lang.Object
com.ctc.wstx.dtd.PrefixedNameSet
com.ctc.wstx.dtd.LargePrefixedNameSet

public final class LargePrefixedNameSet extends PrefixedNameSet
Implementation of PrefixedNameSet suitable for storing large number of entries; basically anything above trivially small sets (4 or less).

Notes about usage:

  • All Strings contained in PrefixedName instances are assumed interned, so that equality comparison can be done (both for values stored and keys used)
  • It is assumed that sets are never empty, ie. always contain at least one entry.
  • It is assumed that caller has ensured that there are no duplicates in the set -- this data structure does no further validation.
  • Constructor Details

    • LargePrefixedNameSet

      public LargePrefixedNameSet(boolean nsAware, PrefixedName[] names)
  • Method Details

    • hasMultiple

      public boolean hasMultiple()
      Specified by:
      hasMultiple in class PrefixedNameSet
      Returns:
      True if set contains more than one entry; false if not (empty or has one)
    • contains

      public boolean contains(PrefixedName name)
      Specified by:
      contains in class PrefixedNameSet
      Returns:
      True if the set contains specified name; false if not.
    • appendNames

      public void appendNames(StringBuilder sb, String sep)
      Method called by debug/error handling code, to get a list of all names contained.
      Specified by:
      appendNames in class PrefixedNameSet