OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012, the Dart project authors. | 2 * Copyright (c) 2012, the Dart project authors. |
3 * | 3 * |
4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u
se this file except | 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u
se this file except |
5 * in compliance with the License. You may obtain a copy of the License at | 5 * in compliance with the License. You may obtain a copy of the License at |
6 * | 6 * |
7 * http://www.eclipse.org/legal/epl-v10.html | 7 * http://www.eclipse.org/legal/epl-v10.html |
8 * | 8 * |
9 * Unless required by applicable law or agreed to in writing, software distribut
ed under the License | 9 * Unless required by applicable law or agreed to in writing, software distribut
ed under the License |
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K
IND, either express | 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K
IND, either express |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 private String name; | 121 private String name; |
122 | 122 |
123 private boolean enumerable; | 123 private boolean enumerable; |
124 | 124 |
125 private boolean configurable; | 125 private boolean configurable; |
126 | 126 |
127 private WebkitRemoteObject value; | 127 private WebkitRemoteObject value; |
128 | 128 |
129 @Override | 129 @Override |
130 public int compareTo(WebkitPropertyDescriptor other) { | 130 public int compareTo(WebkitPropertyDescriptor other) { |
131 return getName().toUpperCase().compareTo(other.getName().toUpperCase()); | 131 String name0 = getName(); |
| 132 String name1 = other.getName(); |
| 133 |
| 134 // Special case names starting with `[[` (like [[class]]). |
| 135 if (name0.startsWith("[[")) { |
| 136 name0 = "~" + name0; |
| 137 } |
| 138 |
| 139 if (name1.startsWith("[[")) { |
| 140 name1 = "~" + name1; |
| 141 } |
| 142 |
| 143 return name0.compareToIgnoreCase(name1); |
132 } | 144 } |
133 | 145 |
134 /** | 146 /** |
135 * A function which serves as a getter for the property, or undefined if there
is no getter | 147 * A function which serves as a getter for the property, or undefined if there
is no getter |
136 * (accessor descriptors only). | 148 * (accessor descriptors only). |
137 */ | 149 */ |
138 public WebkitRemoteObject getGetterFunction() { | 150 public WebkitRemoteObject getGetterFunction() { |
139 return getterFunction; | 151 return getterFunction; |
140 } | 152 } |
141 | 153 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 public boolean isWritable() { | 199 public boolean isWritable() { |
188 return writable; | 200 return writable; |
189 } | 201 } |
190 | 202 |
191 @Override | 203 @Override |
192 public String toString() { | 204 public String toString() { |
193 return "[" + name + "," + value + "]"; | 205 return "[" + name + "," + value + "]"; |
194 } | 206 } |
195 | 207 |
196 } | 208 } |
OLD | NEW |