1// Copyright 2015 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Flags: --expose-debug-as debug 6 7Debug = debug.Debug 8 9var exception = null; 10var break_count = 0; 11 12function listener(event, exec_state, event_data, data) { 13 if (event != Debug.DebugEvent.Break) return; 14 try { 15 print(event_data.sourceLineText()); 16 assertTrue(event_data.sourceLineText().indexOf(`Break ${break_count++}.`) > 0); 17 exec_state.prepareStep(Debug.StepAction.StepIn); 18 } catch (e) { 19 exception = e; 20 } 21}; 22 23function valueOfCallback() { 24 return 2; // Break 2. 25} // Break 3. 26var o = {}; 27o.valueOf = valueOfCallback; 28 29Debug.setListener(listener); 30debugger; // Break 0. 31var result = 1 + o; // Break 1. 32Debug.setListener(null); // Break 4. 33 34assertEquals(3, result); 35assertNull(exception); 36