(path: ObjectPath)
| 98 | } |
| 99 | |
| 100 | deoptimizePath(path: ObjectPath): void { |
| 101 | if ( |
| 102 | this.isReassigned || |
| 103 | this.deoptimizationTracker.trackEntityAtPathAndGetIfTracked(path, this) |
| 104 | ) { |
| 105 | return; |
| 106 | } |
| 107 | if (path.length === 0) { |
| 108 | this.markReassigned(); |
| 109 | const expressionsToBeDeoptimized = this.expressionsToBeDeoptimized; |
| 110 | this.expressionsToBeDeoptimized = EMPTY_ARRAY as unknown as DeoptimizableEntity[]; |
| 111 | for (const expression of expressionsToBeDeoptimized) { |
| 112 | expression.deoptimizeCache(); |
| 113 | } |
| 114 | this.init.deoptimizePath([...this.initPath, UnknownKey]); |
| 115 | } else { |
| 116 | this.init.deoptimizePath(limitConcatenatedPathDepth(this.initPath, path)); |
| 117 | } |
| 118 | } |
| 119 | |
| 120 | getLiteralValueAtPath( |
| 121 | path: ObjectPath, |
nothing calls this directly
no test coverage detected