Package rangetable provides utilities for creating and inspecting unicode.RangeTables.
Internal call graph ▹
Internal call graph ▾
In the call graph viewer below, each node is a function belonging to this package and its children are the functions it calls—perhaps dynamically.
The root nodes are the entry points of the package: functions that may be called from outside the package. There may be non-exported or anonymous functions among them if they are called dynamically from another package.
Click a node to visit that function's source code.
From there you can visit its callers by
clicking its declaring
Functions may be omitted if they were determined to be unreachable in the particular programs or tests that were analyzed.
func Assigned(version string) *unicode.RangeTable
Assigned returns a RangeTable with all assigned code points for a given Unicode version. This includes graphic, format, control, and private-use characters. It returns nil if the data for the given version is not available.
func Merge(ranges ...*unicode.RangeTable) *unicode.RangeTable
Merge returns a new RangeTable that is the union of the given tables. It can also be used to compact user-created RangeTables. The entries in R16 and R32 for any given RangeTable should be sorted and non-overlapping.
A lookup in the resulting table can be several times faster than using In directly on the ranges. Merge is an expensive operation, however, and only makes sense if one intends to use the result for more than a couple of hundred lookups.
func New(r ...rune) *unicode.RangeTable
New creates a RangeTable from the given runes, which may contain duplicates.
func Visit(rt *unicode.RangeTable, fn func(rune))
Visit visits all runes in the given RangeTable in order, calling fn for each.