(key []byte)
| 88 | ) |
| 89 | |
| 90 | func foldFunc(key []byte) string { |
| 91 | nonLetter := false |
| 92 | special := false // special letter |
| 93 | for _, b := range key { |
| 94 | if b >= utf8.RuneSelf { |
| 95 | return "bytes.EqualFold" |
| 96 | } |
| 97 | upper := b & caseMask |
| 98 | if upper < 'A' || upper > 'Z' { |
| 99 | nonLetter = true |
| 100 | } else if upper == 'K' || upper == 'S' { |
| 101 | // See above for why these letters are special. |
| 102 | special = true |
| 103 | } |
| 104 | } |
| 105 | if special { |
| 106 | return "fflib.EqualFoldRight" |
| 107 | } |
| 108 | if nonLetter { |
| 109 | return "fflib.AsciiEqualFold" |
| 110 | } |
| 111 | return "fflib.SimpleLetterEqualFold" |
| 112 | } |
| 113 | |
| 114 | type MarshalerFaster interface { |
| 115 | MarshalJSONBuf(buf fflib.EncodingBuffer) error |
no outgoing calls
no test coverage detected
searching dependent graphs…