Package java_cup

Class symbol_set

java.lang.Object
java_cup.symbol_set

public class symbol_set extends 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:
  • Field Details

    • _all

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

    • symbol_set

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

      public symbol_set(symbol_set other) throws internal_error
      Constructor for cloning from another set.
      Parameters:
      other - the set we are cloning from.
      Throws:
      internal_error
  • Method Details

    • all

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

      public int size()
      size of the set
    • not_null

      protected void not_null(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
    • remove

      public void remove(symbol_set other) throws internal_error
      Remove (set subtract) a complete set.
      Parameters:
      other - the set we are removing.
      Throws:
      internal_error
    • equals

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

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

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

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