| substitute(TextStringBuilder, int, int, List) |   | 84% |   | 80% | 9 | 26 | 13 | 96 | 0 | 1 |
| toString() |  | 0% | | n/a | 1 | 1 | 21 | 21 | 1 | 1 |
| StringSubstitutor(StringSubstitutor) |  | 0% | | n/a | 1 | 1 | 11 | 11 | 1 | 1 |
| replaceIn(StringBuffer, int, int) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| replaceIn(StringBuilder, int, int) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| checkCyclicSubstitution(String, List) |   | 13% |   | 50% | 1 | 2 | 6 | 8 | 0 | 1 |
| replace(String, int, int) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| StringSubstitutor(StringLookup, String, String, char) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| StringSubstitutor(StringLookup, String, String, char, String) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| replace(CharSequence, int, int) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(char[]) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(char[], int, int) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(StringBuffer) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(StringBuffer, int, int) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(TextStringBuilder) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(TextStringBuilder, int, int) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| replace(Object, Properties) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| replace(Object) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| setValueDelimiter(String) |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 1 | 1 |
| setVariablePrefix(String) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| setVariableSuffix(String) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| replace(CharSequence) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| replaceIn(StringBuffer) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| replaceIn(StringBuilder) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| replaceIn(TextStringBuilder) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| StringSubstitutor(Map, String, String, char, String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| replaceIn(TextStringBuilder, int, int) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| replace(Object, Map, String, String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| StringSubstitutor(Map, String, String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| StringSubstitutor(Map, String, String, char) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| replaceSystemProperties(Object) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| replace(Object, Map) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| StringSubstitutor() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setValueDelimiter(char) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setVariablePrefix(char) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setVariableSuffix(char) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setDisableSubstitutionInValues(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setEnableSubstitutionInVariables(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setEnableUndefinedVariableException(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setPreserveEscapes(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| replace(String) |  | 90% |   | 75% | 1 | 3 | 1 | 6 | 0 | 1 |
| resolveVariable(String, TextStringBuilder, int, int) |  | 81% |   | 50% | 1 | 2 | 1 | 4 | 0 | 1 |
| setVariablePrefixMatcher(StringMatcher) |  | 92% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| setVariableSuffixMatcher(StringMatcher) |  | 92% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| StringSubstitutor(StringLookup, StringMatcher, StringMatcher, char, StringMatcher) |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
| hasLaterSuffix(TextStringBuilder, int, int, int, StringMatcher) |  | 100% |  | 100% | 0 | 3 | 0 | 5 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| StringSubstitutor(Map) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| StringSubstitutor(StringLookup, StringMatcher, StringMatcher, char) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| substitute(TextStringBuilder, int, int) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| StringSubstitutor(StringLookup) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| createInterpolator() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| setEscapeChar(char) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setValueDelimiterMatcher(StringMatcher) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setVariableResolver(StringLookup) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| getEscapeChar() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getStringLookup() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getValueDelimiterMatcher() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getVariablePrefixMatcher() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getVariableSuffixMatcher() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isDisableSubstitutionInValues() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isEnableSubstitutionInVariables() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isEnableUndefinedVariableException() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isPreserveEscapes() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |