struct Thing { string s; long i; }; interface StringReciever { void recieveString( in string arg0 ); void bounce( in long arg0 ); }; interface TestInterface { string getFirstAppInList(); void getAppNames( in ::StringReciever arg0 ); typedef sequence<::Thing> sequence_of_Thing; ::TestInterface::sequence_of_Thing getThings(); void callBounce( in ::StringReciever arg0, in long arg1 ); }; interface ISourceTextProvider { typedef sequence sequence_of_string; ::ISourceTextProvider::sequence_of_string getAllPages(); void refreshAllPages(); boolean hasPage( in string arg0 ); boolean loadPage( in string arg0 ); void refreshPage( in string arg0 ); string getPageText( in string arg0 ); long getPageStatus( in string arg0 ); long getPageAlterCount( in string arg0 ); }; struct IScriptSection { long base; long extent; }; typedef sequence<::IScriptSection> sequence_of_IScriptSection; struct IScript { string url; string funname; long base; long extent; long jsdscript; ::sequence_of_IScriptSection sections; }; struct IJSPC { ::IScript script; long offset; }; struct IJSSourceLocation { long line; ::IJSPC pc; }; interface IJSErrorReporter { long reportError( in string arg0, in string arg1, in long arg2, in string arg3, in long arg4 ); }; interface IScriptHook { void justLoadedScript( in ::IScript arg0 ); void aboutToUnloadScript( in ::IScript arg0 ); }; struct IJSStackFrameInfo { ::IJSPC pc; long jsdframe; }; typedef sequence<::IJSStackFrameInfo> sequence_of_IJSStackFrameInfo; struct IJSThreadState { ::sequence_of_IJSStackFrameInfo stack; long continueState; string returnValue; long status; long jsdthreadstate; long id; }; interface IJSExecutionHook { void aboutToExecute( in ::IJSThreadState arg0, in ::IJSPC arg1 ); }; struct IExecResult { string result; boolean errorOccured; string errorMessage; string errorFilename; long errorLineNumber; string errorLineBuffer; long errorTokenOffset; }; interface IDebugController { long getMajorVersion(); long getMinorVersion(); ::IJSErrorReporter setErrorReporter( in ::IJSErrorReporter arg0 ); ::IJSErrorReporter getErrorReporter(); ::IScriptHook setScriptHook( in ::IScriptHook arg0 ); ::IScriptHook getScriptHook(); ::IJSPC getClosestPC( in ::IScript arg0, in long arg1 ); ::IJSSourceLocation getSourceLocation( in ::IJSPC arg0 ); ::IJSExecutionHook setInterruptHook( in ::IJSExecutionHook arg0 ); ::IJSExecutionHook getInterruptHook(); ::IJSExecutionHook setDebugBreakHook( in ::IJSExecutionHook arg0 ); ::IJSExecutionHook getDebugBreakHook(); ::IJSExecutionHook setInstructionHook( in ::IJSExecutionHook arg0, in ::IJSPC arg1 ); ::IJSExecutionHook getInstructionHook( in ::IJSPC arg0 ); void setThreadContinueState( in long arg0, in long arg1 ); void setThreadReturnValue( in long arg0, in string arg1 ); void sendInterrupt(); void sendInterruptStepInto( in long arg0 ); void sendInterruptStepOver( in long arg0 ); void sendInterruptStepOut( in long arg0 ); void reinstateStepper( in long arg0 ); ::IExecResult executeScriptInStackFrame( in long arg0, in ::IJSStackFrameInfo arg1, in string arg2, in string arg3, in long arg4 ); boolean isRunningHook( in long arg0 ); boolean isWaitingForResume( in long arg0 ); void leaveThreadSuspended( in long arg0 ); void resumeThread( in long arg0 ); void iterateScripts( in ::IScriptHook arg0 ); };