%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
// Copyright 2019 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. function formatOrigin(origin) { if (origin.nodeId) { return `#${origin.nodeId} in phase ${origin.phase}/${origin.reducer}`; } if (origin.bytecodePosition) { return `Bytecode line ${origin.bytecodePosition} in phase ${origin.phase}/${origin.reducer}`; } return "unknown origin"; } export class NodeLabel { id: number; label: string; title: string; live: boolean; properties: string; sourcePosition: any; origin: any; opcode: string; control: boolean; opinfo: string; type: string; inplaceUpdatePhase: string; constructor(id: number, label: string, title: string, live: boolean, properties: string, sourcePosition: any, origin: any, opcode: string, control: boolean, opinfo: string, type: string) { this.id = id; this.label = label; this.title = title; this.live = live; this.properties = properties; this.sourcePosition = sourcePosition; this.origin = origin; this.opcode = opcode; this.control = control; this.opinfo = opinfo; this.type = type; this.inplaceUpdatePhase = null; } equals(that?: NodeLabel) { if (!that) return false; if (this.id != that.id) return false; if (this.label != that.label) return false; if (this.title != that.title) return false; if (this.live != that.live) return false; if (this.properties != that.properties) return false; if (this.opcode != that.opcode) return false; if (this.control != that.control) return false; if (this.opinfo != that.opinfo) return false; if (this.type != that.type) return false; return true; } getTitle() { let propsString = ""; if (this.properties === "") { propsString = "no properties"; } else { propsString = "[" + this.properties + "]"; } let title = this.title + "\n" + propsString + "\n" + this.opinfo; if (this.origin) { title += `\nOrigin: ${formatOrigin(this.origin)}`; } if (this.inplaceUpdatePhase) { title += `\nInplace update in phase: ${this.inplaceUpdatePhase}`; } return title; } getDisplayLabel() { const result = `${this.id}: ${this.label}`; if (result.length > 40) { return `${this.id}: ${this.opcode}`; } return result; } setInplaceUpdatePhase(name: string): any { this.inplaceUpdatePhase = name; } }