Unicode.Set.Operation.reduce
You're seeing just the function
reduce
, go back to Unicode.Set.Operation module for more information.
Reduces all sets, properties and ranges to a list of 2-tuples expressing a range of codepoints.
It can return one of two forms
[{:in, [tuple_list]}]
for an inclusion list
[{:not_in, [tuple_list]}]
for an exclusion list
or a combination of both.
Attempts are made to preserve :not_in
clauses
as long as possible since many uses, like regexes
and nimble_parsec
can consume :not_in
style
ranges.
When only single character classes are presented,
or several classes which are unions
, :not_in
can be preserved.
When intersections and differences are required, the rnages must be both reduced and expanded in order for this set operations to complete.