Package java_cup
Class terminal_set
- java.lang.Object
-
- java_cup.terminal_set
-
public class terminal_set extends java.lang.ObjectA set of terminals implemented as a bitset.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.BitSet_elementsBitset to implement the actual set.static terminal_setEMPTYConstant for the empty set.
-
Constructor Summary
Constructors Constructor Description terminal_set()Constructor for an empty set.terminal_set(terminal_set other)Constructor for cloning from another set.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(terminal sym)Add a single terminal to the set.booleanadd(terminal_set other)Add (union) in a complete set.booleancontains(int indx)Given its index determine if the set contains a particular terminal.booleancontains(terminal sym)Determine if the set contains a particular terminal.booleanempty()Determine if the set is empty.booleanequals(terminal_set other)Equality comparison.booleanequals(java.lang.Object other)Generic equality comparison.booleanintersects(terminal_set other)Determine if this set intersects another.booleanis_subset_of(terminal_set other)Determine if this set is an (improper) subset of another.booleanis_superset_of(terminal_set other)Determine if this set is an (improper) superset of another.protected voidnot_null(java.lang.Object obj)Helper function to test for a null object and throw an exception if one is found.voidremove(terminal sym)Remove a terminal if it is in the set.java.lang.StringtoString()Convert to string.
-
-
-
Field Detail
-
EMPTY
public static final terminal_set EMPTY
Constant for the empty set.
-
_elements
protected java.util.BitSet _elements
Bitset to implement the actual set.
-
-
Constructor Detail
-
terminal_set
public terminal_set()
Constructor for an empty set.
-
terminal_set
public terminal_set(terminal_set other) throws internal_error
Constructor for cloning from another set.- Parameters:
other- the set we are cloning from.- Throws:
internal_error
-
-
Method Detail
-
not_null
protected void not_null(java.lang.Object obj) throws internal_errorHelper 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
-
empty
public boolean empty()
Determine if the set is empty.
-
contains
public boolean contains(terminal sym) throws internal_error
Determine if the set contains a particular terminal.- Parameters:
sym- the terminal symbol we are looking for.- Throws:
internal_error
-
contains
public boolean contains(int indx)
Given its index determine if the set contains a particular terminal.- Parameters:
indx- the index of the terminal in question.
-
is_subset_of
public boolean is_subset_of(terminal_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(terminal_set other) throws internal_error
Determine if this set is an (improper) superset of another.- Parameters:
other- the set we are testing against.- Throws:
internal_error
-
add
public boolean add(terminal sym) throws internal_error
Add a single terminal to the set.- Parameters:
sym- the terminal being added.- Returns:
- true if this changes the set.
- Throws:
internal_error
-
remove
public void remove(terminal sym) throws internal_error
Remove a terminal if it is in the set.- Parameters:
sym- the terminal being removed.- Throws:
internal_error
-
add
public boolean add(terminal_set other) throws internal_error
Add (union) in a complete set.- Parameters:
other- the set being added.- Returns:
- true if this changes the set.
- Throws:
internal_error
-
intersects
public boolean intersects(terminal_set other) throws internal_error
Determine if this set intersects another.- Parameters:
other- the other set in question.- Throws:
internal_error
-
equals
public boolean equals(terminal_set other)
Equality comparison.
-
equals
public boolean equals(java.lang.Object other)
Generic equality comparison.- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
Convert to string.- Overrides:
toStringin classjava.lang.Object
-
-