(input string, searchAt int, literal *syntax.LiteralAfterLoop)
| 367 | } |
| 368 | |
| 369 | func stringHasLiteralAfterLoop(input string, searchAt int, literal *syntax.LiteralAfterLoop) bool { |
| 370 | switch { |
| 371 | case literal.String != "": |
| 372 | if literal.StringIgnoreCase { |
| 373 | return helpers.IndexStringIgnoreCaseASCII(input[searchAt:], literal.String) >= 0 |
| 374 | } |
| 375 | return strings.Contains(input[searchAt:], literal.String) |
| 376 | case len(literal.Chars) > 0: |
| 377 | needle := string(literal.Chars) |
| 378 | return strings.ContainsAny(input[searchAt:], needle) |
| 379 | default: |
| 380 | return strings.ContainsRune(input[searchAt:], literal.Char) |
| 381 | } |
| 382 | } |
| 383 | |
| 384 | func stringFixedDistanceCandidateStart(input string, startAt, byteIndex, distance int) (int, bool) { |
| 385 | candidateByteIndex := byteIndex |
no test coverage detected