Class CharRangeSet
java.lang.Object
fc.util.CharRangeSet
A set of char ranges.
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new CharRangeSet with the initial set containing only the specified charrange -
Method Summary
Modifier and TypeMethodDescriptionbooleaninRange(char c) Consider a set of ranges A, B added as a union (logical or) and ranges C and D added as an intersection (logical and).voidAdds the specified range as an intersection to the existing ranges (for purposes ofinRange(char)method).static voidtoString()voidAdds this specified range as a union to the existing set of ranges (for purposes ofinRange(char)method).
-
Constructor Details
-
CharRangeSet
Constructs a new CharRangeSet with the initial set containing only the specified charrange- Parameters:
cs- the initial charrange
-
-
Method Details
-
union
Adds this specified range as a union to the existing set of ranges (for purposes ofinRange(char)method). Overlapping ranges are ok.- Parameters:
cs- a charrange to unite with- Throws:
IllegalArgumentException- if the specified range was null
-
intersection
Adds the specified range as an intersection to the existing ranges (for purposes ofinRange(char)method). Overlapping ranges are ok.- Parameters:
r- the range to add
-
inRange
Consider a set of ranges A, B added as a union (logical or) and ranges C and D added as an intersection (logical and). A character c is in range if it exists in:(A.inRange(c) || B.inRange(c) || ...) invalid input: '&'invalid input: '&' C.inRange(c) invalid input: '&'invalid input: '&' D.inRange(c) invalid input: '&'invalid input: '&' ...
This can be generalized to an arbitrary number of sub ranges. If intersection or union ranges don't exist, then they are not considered in the above expression. Note, the interaction may be subtle if any of the ranges (A, B, C...etc) are individually negated because in that case the inRange method for that negated range would return true if the specified character was not in that range.- Returns:
- true if the passed in character is allowed by this set of ranges.
-
toString
-
main
-