// Copyright 2015 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.// Flags: --expose-debug-as debugDebug=debug.Debugvarexception=null;varbreak_count=0;functionlistener(event,exec_state,event_data,data){if(event!=Debug.DebugEvent.Break)return;try{print(event_data.sourceLineText());assertTrue(event_data.sourceLineText().indexOf(`Break ${break_count++}.`)>0);exec_state.prepareStep(Debug.StepAction.StepIn,1);}catch(e){exception=e;}};functionvalueOfCallback(){return2;// Break 2.}// Break 3.varo={};o.valueOf=valueOfCallback;Debug.setListener(listener);debugger;// Break 0.varresult=1+o;// Break 1.Debug.setListener(null);// Break 4.assertEquals(3,result);assertNull(exception);