Source File
trie.go
Belonging Package
vendor/golang.org/x/net/idna
// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.// Copyright 2016 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package idna// Sparse block handling code.type valueRange struct {value uint16 // header: value:stridelo, hi byte // header: lo:n}type sparseBlocks struct {values []valueRangeoffset []uint16}var idnaSparse = sparseBlocks{values: idnaSparseValues[:],offset: idnaSparseOffset[:],}// Don't use newIdnaTrie to avoid unconditional linking in of the table.var trie = &idnaTrie{}// lookup determines the type of block n and looks up the value for b.// For n < t.cutoff, the block is a simple lookup table. Otherwise, the block// is a list of ranges with an accompanying value. Given a matching range r,// the value for b is by r.value + (b - r.lo) * stride.func ( *sparseBlocks) ( uint32, byte) uint16 {:= .offset[]:= .values[]:= + 1:= + uint16(.lo)for < {:= + (-)/2:= .values[]if .lo <= && <= .hi {return .value + uint16(-.lo)*.value}if < .lo {=} else {= + 1}}return 0}
![]() |
The pages are generated with Golds v0.7.6. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |