| OLD | NEW |
| (Empty) |
| 1 <link rel="import" href="../../../../packages/polymer/polymer.html"> | |
| 2 <link rel="import" href="eval_link.html"> | |
| 3 | |
| 4 <polymer-element name="instance-view"> | |
| 5 <template> | |
| 6 <link rel="stylesheet" href="css/shared.css"> | |
| 7 <nav-bar> | |
| 8 <top-nav-menu></top-nav-menu> | |
| 9 <vm-nav-menu vm="{{ instance.isolate.vm }}"></vm-nav-menu> | |
| 10 <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu> | |
| 11 <!-- TODO(turnidge): Add library nav menu here. --> | |
| 12 <class-nav-menu cls="{{ instance.clazz }}"></class-nav-menu> | |
| 13 <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu> | |
| 14 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 15 <nav-notify notifications="{{ app.notifications }}"></nav-notify> | |
| 16 </nav-bar> | |
| 17 | |
| 18 <div class="content"> | |
| 19 <template if="{{ instance.isAbstractType }}"> | |
| 20 <h1>type {{ instance.name }}</h1> | |
| 21 </template> | |
| 22 <template if="{{ !instance.isAbstractType }}"> | |
| 23 <h1>instance of {{ instance.clazz.name }}</h1> | |
| 24 </template> | |
| 25 | |
| 26 <object-common object="{{ instance }}"></object-common> | |
| 27 | |
| 28 <div class="memberList"> | |
| 29 <div class="memberItem"> </div> | |
| 30 | |
| 31 <template if="{{ instance.valueAsString != null }}"> | |
| 32 <div class="memberItem"> | |
| 33 <div class="memberName">value</div> | |
| 34 <div class="memberValue"> | |
| 35 <pre>{{ instance.valueAsString }}</pre> | |
| 36 </div> | |
| 37 </div> | |
| 38 </template> | |
| 39 | |
| 40 <template if="{{ instance.isString }}"> | |
| 41 <div class="memberItem"> | |
| 42 <div class="memberName">valueAsLiteral</div> | |
| 43 <div class="memberValue"> {{ asStringLiteral(instance.valueAsString,
instance.valueAsStringIsTruncated) }}</div> | |
| 44 </div> | |
| 45 </template> | |
| 46 | |
| 47 <template if="{{ instance.typeClass != null }}"> | |
| 48 <div class="memberItem"> | |
| 49 <div class="memberName">type class</div> | |
| 50 <div class="memberValue"> | |
| 51 <class-ref ref="{{ instance.typeClass }}"> | |
| 52 </class-ref> | |
| 53 </div> | |
| 54 </div> | |
| 55 </template> | |
| 56 <template if="{{ instance.typeArguments.length > 0 }}"> | |
| 57 <div class="memberItem"> | |
| 58 <div class="memberName">type arguments</div> | |
| 59 <div class="memberValue"> | |
| 60 < | |
| 61 <template repeat="{{ index in instance.typeArguments['types'].asMa
p().keys }}"> | |
| 62 <instance-ref ref="{{ instance.typeArguments['types'][index] }}"
> | |
| 63 </instance-ref> | |
| 64 <template if="{{ index < instance.typeArguments['types'].length
- 1 }}"> | |
| 65 , | |
| 66 </template> | |
| 67 </template> | |
| 68 > | |
| 69 </div> | |
| 70 </div> | |
| 71 </template> | |
| 72 <template if="{{ instance.parameterizedClass != null }}"> | |
| 73 <div class="memberItem"> | |
| 74 <div class="memberName">parameterized class</div> | |
| 75 <div class="memberValue"> | |
| 76 <class-ref ref="{{ instance.parameterizedClass }}"> | |
| 77 </class-ref> | |
| 78 </div> | |
| 79 </div> | |
| 80 </template> | |
| 81 <template if="{{ instance.parameterIndex != null }}"> | |
| 82 <div class="memberItem"> | |
| 83 <div class="memberName">parameter index</div> | |
| 84 <div class="memberValue"> | |
| 85 {{ instance.parameterIndex }} | |
| 86 </div> | |
| 87 </div> | |
| 88 </template> | |
| 89 <template if="{{ instance.targetType != null }}"> | |
| 90 <div class="memberItem"> | |
| 91 <div class="memberName">target type</div> | |
| 92 <div class="memberValue"> | |
| 93 <instance-ref ref="{{ instance.targetType }}"> | |
| 94 </instance-ref> | |
| 95 </div> | |
| 96 </div> | |
| 97 </template> | |
| 98 <template if="{{ instance.bound != null }}"> | |
| 99 <div class="memberItem"> | |
| 100 <div class="memberName">bound</div> | |
| 101 <div class="memberValue"> | |
| 102 <instance-ref ref="{{ instance.bound }}"> | |
| 103 </instance-ref> | |
| 104 </div> | |
| 105 </div> | |
| 106 </template> | |
| 107 | |
| 108 <template if="{{ instance.isClosure }}"> | |
| 109 <div class="memberItem"> | |
| 110 <div class="memberName">closure function</div> | |
| 111 <div class="memberValue"> | |
| 112 <function-ref ref="{{ instance.closureFunction }}"> | |
| 113 </function-ref> | |
| 114 </div> | |
| 115 </div> | |
| 116 <div class="memberItem"> | |
| 117 <div class="memberName">closure context</div> | |
| 118 <div class="memberValue"> | |
| 119 <any-service-ref ref="{{ instance.context }}"> | |
| 120 </any-service-ref> | |
| 121 </div> | |
| 122 </div> | |
| 123 <div class="memberItem"> | |
| 124 <div class="memberName">closure breakpoint</div> | |
| 125 <div class="memberValue"> | |
| 126 <template if="{{ instance.activationBreakpoint == null }}"> | |
| 127 <action-link callback="{{ setBreakOnActivation }}" | |
| 128 label="break on activation"> | |
| 129 </action-link> | |
| 130 </template> | |
| 131 <template if="{{ instance.activationBreakpoint != null }}"> | |
| 132 {{ instance.activationBreakpoint.toString() }} | |
| 133 <action-link callback="{{ clearBreakOnActivation }}" | |
| 134 label="remove"> | |
| 135 </action-link> | |
| 136 </template> | |
| 137 </div> | |
| 138 </div> | |
| 139 </template> | |
| 140 | |
| 141 <div class="memberItem"> | |
| 142 <div class="memberName">toString()</div> | |
| 143 <div class="memberValue"> | |
| 144 <eval-link callback="{{ evaluate }}" expr="toString()"></eval-link> | |
| 145 </div> | |
| 146 </div> | |
| 147 <div class="memberItem"> | |
| 148 <div class="memberName">runtimeType</div> | |
| 149 <div class="memberValue"> | |
| 150 <eval-link callback="{{ evaluate }}" expr="runtimeType"></eval-link> | |
| 151 </div> | |
| 152 </div> | |
| 153 </div> | |
| 154 </div> | |
| 155 | |
| 156 <hr> | |
| 157 | |
| 158 <div class="content"> | |
| 159 <eval-box context="{{ instance }}"></eval-box> | |
| 160 </div> | |
| 161 | |
| 162 <hr> | |
| 163 | |
| 164 <div class="content"> | |
| 165 <template if="{{ instance.nativeFields.isNotEmpty }}"> | |
| 166 native fields ({{ instance.nativeFields.length }}) | |
| 167 <curly-block expand="{{ instance.nativeFields.length <= 100 }}"> | |
| 168 <div class="memberList"> | |
| 169 <template repeat="{{ field in instance.nativeFields }}"> | |
| 170 <div class="memberItem"> | |
| 171 <div class="memberName">[{{ field['index']}}]</div> | |
| 172 <div class="memberValue">[{{ field['value']}}]</div> | |
| 173 </div> | |
| 174 </template> | |
| 175 </div> | |
| 176 </curly-block><br><br> | |
| 177 </template> | |
| 178 | |
| 179 <template if="{{ instance.fields.isNotEmpty }}"> | |
| 180 fields ({{ instance.fields.length }}) | |
| 181 <curly-block expand="{{ instance.fields.length <= 100 }}"> | |
| 182 <div class="memberList"> | |
| 183 <template repeat="{{ field in instance.fields }}"> | |
| 184 <div class="memberItem"> | |
| 185 <div class="memberName"> | |
| 186 <field-ref ref="{{ field.decl }}"></field-ref> | |
| 187 </div> | |
| 188 <div class="memberValue"> | |
| 189 <any-service-ref ref="{{ field.value }}"></any-service-ref> | |
| 190 </div> | |
| 191 </div> | |
| 192 </template> | |
| 193 </div> | |
| 194 </curly-block><br><br> | |
| 195 </template> | |
| 196 | |
| 197 <template if="{{ instance.elements.isNotEmpty }}"> | |
| 198 elements ({{ instance.length }}) | |
| 199 <curly-block expand="{{ instance.elements.length <= 100 }}"> | |
| 200 <div class="memberList"> | |
| 201 <template repeat="{{ index in instance.elements.asMap().keys }}"> | |
| 202 <div class="memberItem"> | |
| 203 <div class="memberName">[{{ index }}]</div> | |
| 204 <div class="memberValue"> | |
| 205 <any-service-ref ref="{{ instance.elements[index] }}"> | |
| 206 </any-service-ref> | |
| 207 </div> | |
| 208 </div> | |
| 209 </template> | |
| 210 <template if="{{ instance.length != instance.elements.length }}"> | |
| 211 <div class="memberItem"> | |
| 212 <div class="memberName">...</div> | |
| 213 <div class="memberValue"> | |
| 214 <em>{{ instance.length - instance.elements.length }} omitted e
lements</em> | |
| 215 </div> | |
| 216 </div> | |
| 217 </template> | |
| 218 </div> | |
| 219 </curly-block><br><br> | |
| 220 </template> | |
| 221 | |
| 222 <template if="{{ instance.associations.isNotEmpty }}"> | |
| 223 associations ({{ instance.length }}) | |
| 224 <curly-block expand="{{ instance.associations.length <= 100 }}"> | |
| 225 <div class="memberList"> | |
| 226 <template repeat="{{ association in instance.associations }}"> | |
| 227 <div class="memberItem"> | |
| 228 <div class="memberValue"> | |
| 229 [<any-service-ref ref="{{ association.key }}"></any-service-re
f>] | |
| 230 </div> | |
| 231 <div class="memberValue"> | |
| 232 <any-service-ref ref="{{ association.value }}"></any-service-r
ef> | |
| 233 </div> | |
| 234 </div> | |
| 235 </template> | |
| 236 <template if="{{ instance.length != instance.associations.length }}"> | |
| 237 <div class="memberItem"> | |
| 238 <div class="memberName">...</div> | |
| 239 <div class="memberValue"> | |
| 240 <em>{{ instance.length - instance.associations.length }} omitt
ed associations</em> | |
| 241 </div> | |
| 242 </div> | |
| 243 </template> | |
| 244 </div> | |
| 245 </curly-block><br><br> | |
| 246 </template> | |
| 247 | |
| 248 <template if="{{ instance.typedElements.isNotEmpty }}"> | |
| 249 elements ({{ instance.length }}) | |
| 250 <curly-block expand="{{ instance.typedElements.length <= 100 }}"> | |
| 251 <div class="memberList"> | |
| 252 <template repeat="{{ index in instance.typedElements.asMap().keys }}
"> | |
| 253 <div class="memberItem"> | |
| 254 <div class="memberName">[{{ index }}]</div> | |
| 255 <div class="memberValue">{{ instance.typedElements[index].toStri
ng() }}</div> | |
| 256 </div> | |
| 257 </template> | |
| 258 <template if="{{ instance.length != instance.typedElements.length }}"> | |
| 259 <div class="memberItem"> | |
| 260 <div class="memberName">...</div> | |
| 261 <div class="memberValue"> | |
| 262 <em>{{ instance.length - instance.elements.length }} omitted e
lements</em> | |
| 263 </div> | |
| 264 </div> | |
| 265 </template> | |
| 266 </div> | |
| 267 </curly-block><br><br> | |
| 268 </template> | |
| 269 | |
| 270 <template if="{{ instance.isRegExp }}"> | |
| 271 <div class="memberList"> | |
| 272 <div class="memberItem"> | |
| 273 <div class="memberName">pattern</div> | |
| 274 <div class="memberValue"> | |
| 275 <any-service-ref ref="{{ instance.pattern }}"></any-service-ref> | |
| 276 </div> | |
| 277 </div> | |
| 278 <div class="memberItem"> | |
| 279 <div class="memberName">isCaseSensitive</div> | |
| 280 <div class="memberValue">{{ instance.isCaseSensitive }}</div> | |
| 281 </div> | |
| 282 <div class="memberItem"> | |
| 283 <div class="memberName">isMultiLine</div> | |
| 284 <div class="memberValue">{{ instance.isMultiLine }}</div> | |
| 285 </div> | |
| 286 <div class="memberItem"> | |
| 287 <div class="memberName">oneByteFunction</div> | |
| 288 <div class="memberValue"> | |
| 289 <any-service-ref ref="{{ instance.oneByteFunction }}"></any-servic
e-ref> | |
| 290 </div> | |
| 291 </div> | |
| 292 <div class="memberItem"> | |
| 293 <div class="memberName">twoByteFunction</div> | |
| 294 <div class="memberValue"> | |
| 295 <any-service-ref ref="{{ instance.twoByteFunction }}"></any-servic
e-ref> | |
| 296 </div> | |
| 297 </div> | |
| 298 <div class="memberItem"> | |
| 299 <div class="memberName">externalOneByteFunction</div> | |
| 300 <div class="memberValue"> | |
| 301 <any-service-ref ref="{{ instance.externalOneByteFunction }}"></an
y-service-ref> | |
| 302 </div> | |
| 303 </div> | |
| 304 <div class="memberItem"> | |
| 305 <div class="memberName">externalTwoByteFunction</div> | |
| 306 <div class="memberValue"> | |
| 307 <any-service-ref ref="{{ instance.externalTwoByteFunction }}"></an
y-service-ref> | |
| 308 </div> | |
| 309 </div> | |
| 310 <div class="memberItem"> | |
| 311 <div class="memberName">oneByteBytecode</div> | |
| 312 <div class="memberValue"> | |
| 313 <any-service-ref ref="{{ instance.oneByteBytecode }}"></any-servic
e-ref> | |
| 314 </div> | |
| 315 </div> | |
| 316 <div class="memberItem"> | |
| 317 <div class="memberName">twoByteBytecode</div> | |
| 318 <div class="memberValue"> | |
| 319 <any-service-ref ref="{{ instance.twoByteBytecode }}"></any-servic
e-ref> | |
| 320 </div> | |
| 321 </div> | |
| 322 </div> | |
| 323 </template> | |
| 324 | |
| 325 <template if="{{ instance.isMirrorReference }}"> | |
| 326 <div class="memberItem"> | |
| 327 <div class="memberName">referent</div> | |
| 328 <div class="memberValue"> | |
| 329 <any-service-ref ref="{{ instance.referent }}"> | |
| 330 </any-service-ref> | |
| 331 </div> | |
| 332 </div> | |
| 333 </template> | |
| 334 | |
| 335 <template if="{{ instance.isWeakProperty }}"> | |
| 336 <div class="memberItem"> | |
| 337 <div class="memberName">key</div> | |
| 338 <div class="memberValue"> | |
| 339 <any-service-ref ref="{{ instance.key }}"></any-service-ref> | |
| 340 </div> | |
| 341 </div> | |
| 342 <div class="memberItem"> | |
| 343 <div class="memberName">value</div> | |
| 344 <div class="memberValue"> | |
| 345 <any-service-ref ref="{{ instance.value }}"></any-service-ref> | |
| 346 </div> | |
| 347 </div> | |
| 348 </template> | |
| 349 | |
| 350 </div> | |
| 351 | |
| 352 <div class="content-centered-big"> | |
| 353 <template if="{{ instance.isClosure }}"> | |
| 354 <source-inset location="{{ instance.closureFunction.location }}"></sourc
e-inset> | |
| 355 </template> | |
| 356 <template if="{{ instance.typeClass != null }}"> | |
| 357 <source-inset location="{{ instance.typeClass.location }}"></source-inse
t> | |
| 358 </template> | |
| 359 </div> | |
| 360 | |
| 361 <view-footer></view-footer> | |
| 362 </template> | |
| 363 </polymer-element> | |
| 364 | |
| 365 <script type="application/dart" src="instance_view.dart"></script> | |
| OLD | NEW |