CharEscaperBuilder.java
2.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package com.google.common.escape;
import com.google.common.annotations.Beta;
import com.google.common.annotations.GwtCompatible;
import com.google.common.base.Preconditions;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
@Beta
@GwtCompatible
public final class CharEscaperBuilder
{
private final Map<Character, String> a = new HashMap();
private int b = -1;
public final CharEscaperBuilder addEscape(char paramChar, String paramString)
{
this.a.put(Character.valueOf(paramChar), Preconditions.checkNotNull(paramString));
if (paramChar > this.b) {
this.b = paramChar;
}
return this;
}
public final CharEscaperBuilder addEscapes(char[] paramArrayOfChar, String paramString)
{
Preconditions.checkNotNull(paramString);
int j = paramArrayOfChar.length;
int i = 0;
while (i < j)
{
addEscape(paramArrayOfChar[i], paramString);
i += 1;
}
return this;
}
public final char[][] toArray()
{
char[][] arrayOfChar = new char[this.b + 1][];
Iterator localIterator = this.a.entrySet().iterator();
while (localIterator.hasNext())
{
Map.Entry localEntry = (Map.Entry)localIterator.next();
arrayOfChar[((Character)localEntry.getKey()).charValue()] = ((String)localEntry.getValue()).toCharArray();
}
return arrayOfChar;
}
public final Escaper toEscaper()
{
return new a(toArray());
}
static final class a
extends CharEscaper
{
private final char[][] a;
private final int b;
a(char[][] paramArrayOfChar)
{
this.a = paramArrayOfChar;
this.b = paramArrayOfChar.length;
}
public final String escape(String paramString)
{
int j = paramString.length();
int i = 0;
for (;;)
{
String str = paramString;
if (i < j)
{
int k = paramString.charAt(i);
if ((k < this.a.length) && (this.a[k] != null)) {
str = escapeSlow(paramString, i);
}
}
else
{
return str;
}
i += 1;
}
}
protected final char[] escape(char paramChar)
{
if (paramChar < this.b) {
return this.a[paramChar];
}
return null;
}
}
}
/* Location: /home/merong/decompile/hackery-dex2jar.jar!/com/google/common/escape/CharEscaperBuilder.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 0.7.1
*/