Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(200)

Unified Diff: runtime/observatory/lib/src/elements/instance_view.html

Issue 2291233002: Converted Observatory instance-view element (Closed)
Patch Set: Addressed comments Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/observatory/lib/src/elements/instance_view.html
diff --git a/runtime/observatory/lib/src/elements/instance_view.html b/runtime/observatory/lib/src/elements/instance_view.html
deleted file mode 100644
index 06734969b3f8f98480115bc8c57eceef864fc1d0..0000000000000000000000000000000000000000
--- a/runtime/observatory/lib/src/elements/instance_view.html
+++ /dev/null
@@ -1,365 +0,0 @@
-<link rel="import" href="../../../../packages/polymer/polymer.html">
-<link rel="import" href="eval_link.html">
-
-<polymer-element name="instance-view">
- <template>
- <link rel="stylesheet" href="css/shared.css">
- <nav-bar>
- <top-nav-menu></top-nav-menu>
- <vm-nav-menu vm="{{ instance.isolate.vm }}"></vm-nav-menu>
- <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu>
- <!-- TODO(turnidge): Add library nav menu here. -->
- <class-nav-menu cls="{{ instance.clazz }}"></class-nav-menu>
- <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu>
- <nav-refresh callback="{{ refresh }}"></nav-refresh>
- <nav-notify notifications="{{ app.notifications }}"></nav-notify>
- </nav-bar>
-
- <div class="content">
- <template if="{{ instance.isAbstractType }}">
- <h1>type {{ instance.name }}</h1>
- </template>
- <template if="{{ !instance.isAbstractType }}">
- <h1>instance of {{ instance.clazz.name }}</h1>
- </template>
-
- <object-common object="{{ instance }}"></object-common>
-
- <div class="memberList">
- <div class="memberItem">&nbsp;</div>
-
- <template if="{{ instance.valueAsString != null }}">
- <div class="memberItem">
- <div class="memberName">value</div>
- <div class="memberValue">
- <pre>{{ instance.valueAsString }}</pre>
- </div>
- </div>
- </template>
-
- <template if="{{ instance.isString }}">
- <div class="memberItem">
- <div class="memberName">valueAsLiteral</div>
- <div class="memberValue"> {{ asStringLiteral(instance.valueAsString, instance.valueAsStringIsTruncated) }}</div>
- </div>
- </template>
-
- <template if="{{ instance.typeClass != null }}">
- <div class="memberItem">
- <div class="memberName">type class</div>
- <div class="memberValue">
- <class-ref ref="{{ instance.typeClass }}">
- </class-ref>
- </div>
- </div>
- </template>
- <template if="{{ instance.typeArguments.length > 0 }}">
- <div class="memberItem">
- <div class="memberName">type arguments</div>
- <div class="memberValue">
- &lt;
- <template repeat="{{ index in instance.typeArguments['types'].asMap().keys }}">
- <instance-ref ref="{{ instance.typeArguments['types'][index] }}">
- </instance-ref>
- <template if="{{ index < instance.typeArguments['types'].length - 1 }}">
- ,
- </template>
- </template>
- &gt;
- </div>
- </div>
- </template>
- <template if="{{ instance.parameterizedClass != null }}">
- <div class="memberItem">
- <div class="memberName">parameterized class</div>
- <div class="memberValue">
- <class-ref ref="{{ instance.parameterizedClass }}">
- </class-ref>
- </div>
- </div>
- </template>
- <template if="{{ instance.parameterIndex != null }}">
- <div class="memberItem">
- <div class="memberName">parameter index</div>
- <div class="memberValue">
- {{ instance.parameterIndex }}
- </div>
- </div>
- </template>
- <template if="{{ instance.targetType != null }}">
- <div class="memberItem">
- <div class="memberName">target type</div>
- <div class="memberValue">
- <instance-ref ref="{{ instance.targetType }}">
- </instance-ref>
- </div>
- </div>
- </template>
- <template if="{{ instance.bound != null }}">
- <div class="memberItem">
- <div class="memberName">bound</div>
- <div class="memberValue">
- <instance-ref ref="{{ instance.bound }}">
- </instance-ref>
- </div>
- </div>
- </template>
-
- <template if="{{ instance.isClosure }}">
- <div class="memberItem">
- <div class="memberName">closure function</div>
- <div class="memberValue">
- <function-ref ref="{{ instance.closureFunction }}">
- </function-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">closure context</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.context }}">
- </any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">closure breakpoint</div>
- <div class="memberValue">
- <template if="{{ instance.activationBreakpoint == null }}">
- <action-link callback="{{ setBreakOnActivation }}"
- label="break on activation">
- </action-link>
- </template>
- <template if="{{ instance.activationBreakpoint != null }}">
- {{ instance.activationBreakpoint.toString() }}
- <action-link callback="{{ clearBreakOnActivation }}"
- label="remove">
- </action-link>
- </template>
- </div>
- </div>
- </template>
-
- <div class="memberItem">
- <div class="memberName">toString()</div>
- <div class="memberValue">
- <eval-link callback="{{ evaluate }}" expr="toString()"></eval-link>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">runtimeType</div>
- <div class="memberValue">
- <eval-link callback="{{ evaluate }}" expr="runtimeType"></eval-link>
- </div>
- </div>
- </div>
- </div>
-
- <hr>
-
- <div class="content">
- <eval-box context="{{ instance }}"></eval-box>
- </div>
-
- <hr>
-
- <div class="content">
- <template if="{{ instance.nativeFields.isNotEmpty }}">
- native fields ({{ instance.nativeFields.length }})
- <curly-block expand="{{ instance.nativeFields.length <= 100 }}">
- <div class="memberList">
- <template repeat="{{ field in instance.nativeFields }}">
- <div class="memberItem">
- <div class="memberName">[{{ field['index']}}]</div>
- <div class="memberValue">[{{ field['value']}}]</div>
- </div>
- </template>
- </div>
- </curly-block><br><br>
- </template>
-
- <template if="{{ instance.fields.isNotEmpty }}">
- fields ({{ instance.fields.length }})
- <curly-block expand="{{ instance.fields.length <= 100 }}">
- <div class="memberList">
- <template repeat="{{ field in instance.fields }}">
- <div class="memberItem">
- <div class="memberName">
- <field-ref ref="{{ field.decl }}"></field-ref>
- </div>
- <div class="memberValue">
- <any-service-ref ref="{{ field.value }}"></any-service-ref>
- </div>
- </div>
- </template>
- </div>
- </curly-block><br><br>
- </template>
-
- <template if="{{ instance.elements.isNotEmpty }}">
- elements ({{ instance.length }})
- <curly-block expand="{{ instance.elements.length <= 100 }}">
- <div class="memberList">
- <template repeat="{{ index in instance.elements.asMap().keys }}">
- <div class="memberItem">
- <div class="memberName">[{{ index }}]</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.elements[index] }}">
- </any-service-ref>
- </div>
- </div>
- </template>
- <template if="{{ instance.length != instance.elements.length }}">
- <div class="memberItem">
- <div class="memberName">...</div>
- <div class="memberValue">
- <em>{{ instance.length - instance.elements.length }} omitted elements</em>
- </div>
- </div>
- </template>
- </div>
- </curly-block><br><br>
- </template>
-
- <template if="{{ instance.associations.isNotEmpty }}">
- associations ({{ instance.length }})
- <curly-block expand="{{ instance.associations.length <= 100 }}">
- <div class="memberList">
- <template repeat="{{ association in instance.associations }}">
- <div class="memberItem">
- <div class="memberValue">
- [<any-service-ref ref="{{ association.key }}"></any-service-ref>]
- </div>
- <div class="memberValue">
- <any-service-ref ref="{{ association.value }}"></any-service-ref>
- </div>
- </div>
- </template>
- <template if="{{ instance.length != instance.associations.length }}">
- <div class="memberItem">
- <div class="memberName">...</div>
- <div class="memberValue">
- <em>{{ instance.length - instance.associations.length }} omitted associations</em>
- </div>
- </div>
- </template>
- </div>
- </curly-block><br><br>
- </template>
-
- <template if="{{ instance.typedElements.isNotEmpty }}">
- elements ({{ instance.length }})
- <curly-block expand="{{ instance.typedElements.length <= 100 }}">
- <div class="memberList">
- <template repeat="{{ index in instance.typedElements.asMap().keys }}">
- <div class="memberItem">
- <div class="memberName">[{{ index }}]</div>
- <div class="memberValue">{{ instance.typedElements[index].toString() }}</div>
- </div>
- </template>
- <template if="{{ instance.length != instance.typedElements.length }}">
- <div class="memberItem">
- <div class="memberName">...</div>
- <div class="memberValue">
- <em>{{ instance.length - instance.elements.length }} omitted elements</em>
- </div>
- </div>
- </template>
- </div>
- </curly-block><br><br>
- </template>
-
- <template if="{{ instance.isRegExp }}">
- <div class="memberList">
- <div class="memberItem">
- <div class="memberName">pattern</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.pattern }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">isCaseSensitive</div>
- <div class="memberValue">{{ instance.isCaseSensitive }}</div>
- </div>
- <div class="memberItem">
- <div class="memberName">isMultiLine</div>
- <div class="memberValue">{{ instance.isMultiLine }}</div>
- </div>
- <div class="memberItem">
- <div class="memberName">oneByteFunction</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.oneByteFunction }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">twoByteFunction</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.twoByteFunction }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">externalOneByteFunction</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.externalOneByteFunction }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">externalTwoByteFunction</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.externalTwoByteFunction }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">oneByteBytecode</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.oneByteBytecode }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">twoByteBytecode</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.twoByteBytecode }}"></any-service-ref>
- </div>
- </div>
- </div>
- </template>
-
- <template if="{{ instance.isMirrorReference }}">
- <div class="memberItem">
- <div class="memberName">referent</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.referent }}">
- </any-service-ref>
- </div>
- </div>
- </template>
-
- <template if="{{ instance.isWeakProperty }}">
- <div class="memberItem">
- <div class="memberName">key</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.key }}"></any-service-ref>
- </div>
- </div>
- <div class="memberItem">
- <div class="memberName">value</div>
- <div class="memberValue">
- <any-service-ref ref="{{ instance.value }}"></any-service-ref>
- </div>
- </div>
- </template>
-
- </div>
-
- <div class="content-centered-big">
- <template if="{{ instance.isClosure }}">
- <source-inset location="{{ instance.closureFunction.location }}"></source-inset>
- </template>
- <template if="{{ instance.typeClass != null }}">
- <source-inset location="{{ instance.typeClass.location }}"></source-inset>
- </template>
- </div>
-
- <view-footer></view-footer>
- </template>
-</polymer-element>
-
-<script type="application/dart" src="instance_view.dart"></script>

Powered by Google App Engine
This is Rietveld 408576698