blob: 9e5dc8f0049872e07f8a9861b85993f5bf790f4a [file] [log] [blame]
// Copyright 2018 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 language
// GetCoreKey generates a uint32 value that is guaranteed to be unique for
// different language, region, and script values.
func GetCoreKey(t Tag) (key uint32) {
if t.LangID > langNoIndexOffset {
return 0xfff00000
}
key |= uint32(t.LangID) << (8 + 12)
key |= uint32(t.ScriptID) << 12
key |= uint32(t.RegionID)
return key
}