You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
written by hand - just enough to compile rsc.io/sampler, rsc.io/quote
 | 
						|
 | 
						|
-- .mod --
 | 
						|
module golang.org/x/text
 | 
						|
-- .info --
 | 
						|
{"Version":"v0.0.0-20170915032832-14c0d48ead0c","Name":"v0.0.0-20170915032832-14c0d48ead0c","Short":"14c0d48ead0c","Time":"2017-09-15T03:28:32Z"}
 | 
						|
-- go.mod --
 | 
						|
module golang.org/x/text
 | 
						|
-- unused/unused.go --
 | 
						|
package unused
 | 
						|
-- language/lang.go --
 | 
						|
// 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.
 | 
						|
 | 
						|
// This is a tiny version of golang.org/x/text.
 | 
						|
 | 
						|
package language
 | 
						|
 | 
						|
import "strings"
 | 
						|
 | 
						|
type Tag string
 | 
						|
 | 
						|
func Make(s string) Tag { return Tag(s) }
 | 
						|
 | 
						|
func (t Tag) String() string { return string(t) }
 | 
						|
 | 
						|
func NewMatcher(tags []Tag) Matcher { return &matcher{tags} }
 | 
						|
 | 
						|
type Matcher interface {
 | 
						|
	Match(...Tag) (Tag, int, int)
 | 
						|
}
 | 
						|
 | 
						|
type matcher struct {
 | 
						|
	tags []Tag
 | 
						|
}
 | 
						|
 | 
						|
func (m *matcher) Match(prefs ...Tag) (Tag, int, int) {
 | 
						|
	for _, pref := range prefs {
 | 
						|
		for _, tag := range m.tags {
 | 
						|
			if tag == pref || strings.HasPrefix(string(pref), string(tag+"-")) || strings.HasPrefix(string(tag), string(pref+"-")) {
 | 
						|
				return tag, 0, 0
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
	return m.tags[0], 0, 0
 | 
						|
}
 |