Package java_cup

Class symbol_set


  • public class symbol_set
    extends java.lang.Object
    This class represents a set of symbols and provides a series of set operations to manipulate them.
    Version:
    last updated: 11/25/95
    Author:
    Scott Hudson
    See Also:
    symbol
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.Hashtable _all
      A hash table to hold the set.
    • Constructor Summary

      Constructors 
      Constructor Description
      symbol_set()
      Constructor for an empty set.
      symbol_set​(symbol_set other)
      Constructor for cloning from another set.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean add​(symbol sym)
      Add a single symbol to the set.
      boolean add​(symbol_set other)
      Add (union) in a complete set.
      java.util.Enumeration all()
      Access to all elements of the set.
      boolean contains​(symbol sym)
      Determine if the set contains a particular symbol.
      boolean equals​(symbol_set other)
      Equality comparison.
      boolean equals​(java.lang.Object other)
      Generic equality comparison.
      int hashCode()
      Compute a hash code.
      boolean is_subset_of​(symbol_set other)
      Determine if this set is an (improper) subset of another.
      boolean is_superset_of​(symbol_set other)
      Determine if this set is an (improper) superset of another.
      protected void not_null​(java.lang.Object obj)
      Helper function to test for a null object and throw an exception if one is found.
      void remove​(symbol sym)
      Remove a single symbol if it is in the set.
      void remove​(symbol_set other)
      Remove (set subtract) a complete set.
      int size()
      size of the set
      java.lang.String toString()
      Convert to a string.
      • Methods inherited from class java.lang.Object

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

      • _all

        protected java.util.Hashtable _all
        A hash table to hold the set. Symbols are keyed using their name string.
    • Constructor Detail

      • symbol_set

        public symbol_set()
        Constructor for an empty set.
    • Method Detail

      • all

        public java.util.Enumeration all()
        Access to all elements of the set.
      • size

        public int size()
        size of the set
      • not_null

        protected void not_null​(java.lang.Object obj)
                         throws internal_error
        Helper function to test for a null object and throw an exception if one is found.
        Parameters:
        obj - the object we are testing.
        Throws:
        internal_error
      • contains

        public boolean contains​(symbol sym)
        Determine if the set contains a particular symbol.
        Parameters:
        sym - the symbol we are looking for.
      • is_subset_of

        public boolean is_subset_of​(symbol_set other)
                             throws internal_error
        Determine if this set is an (improper) subset of another.
        Parameters:
        other - the set we are testing against.
        Throws:
        internal_error
      • is_superset_of

        public boolean is_superset_of​(symbol_set other)
                               throws internal_error
        Determine if this set is an (improper) superset of another.
        Parameters:
        other - the set we are are testing against.
        Throws:
        internal_error
      • add

        public boolean add​(symbol sym)
                    throws internal_error
        Add a single symbol to the set.
        Parameters:
        sym - the symbol we are adding.
        Returns:
        true if this changes the set.
        Throws:
        internal_error
      • remove

        public void remove​(symbol sym)
                    throws internal_error
        Remove a single symbol if it is in the set.
        Parameters:
        sym - the symbol we are removing.
        Throws:
        internal_error
      • add

        public boolean add​(symbol_set other)
                    throws internal_error
        Add (union) in a complete set.
        Parameters:
        other - the set we are adding in.
        Returns:
        true if this changes the set.
        Throws:
        internal_error
      • equals

        public boolean equals​(symbol_set other)
        Equality comparison.
      • equals

        public boolean equals​(java.lang.Object other)
        Generic equality comparison.
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Compute a hash code.
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Convert to a string.
        Overrides:
        toString in class java.lang.Object