| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_script_XDebugging_idl__ |
| #define __com_sun_star_script_XDebugging_idl__ |
| |
| #ifndef __com_sun_star_uno_XInterface_idl__ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| |
| #ifndef __com_sun_star_script_ContextInformation_idl__ |
| #include <com/sun/star/script/ContextInformation.idl> |
| #endif |
| |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module script { |
| |
| //============================================================================= |
| |
| // DocMerge from xml: interface com::sun::star::script::XDebugging |
| /** makes it possible to set breakpoints in an interpreter. |
| @deprecated |
| */ |
| published interface XDebugging: com::sun::star::uno::XInterface |
| { |
| //------------------------------------------------------------------------- |
| /** returns the source code line where the breakpoint was set. |
| |
| <p>The value can differ from the parameter |
| <var>nSourceCodeLine</var> when this is not a valid line to |
| place it. -1 indicates that the breakpoint cannot be set at |
| this position. |
| */ |
| long setBreakPoint( [in] string aModuleName, |
| [in] long nSourceCodeLine, |
| [in] boolean bOn ); |
| |
| //------------------------------------------------------------------------- |
| /** clears all breakpoints in the module set by "setBreakPoint". |
| */ |
| void clearAllBreakPoints( [in] string aModuleName ); |
| |
| //------------------------------------------------------------------------- |
| /** Evaluates an expression. |
| |
| @returns the value of the expression as string. |
| |
| @param CallStackPos Position in the call stack for which the expression |
| should be evaluated. 0 is the top/actual position in the call |
| in the call stack, 1 the next and so on. |
| */ |
| string eval( [in] string aSourceCode, |
| [in] short nCallStackPos ); |
| |
| //------------------------------------------------------------------------- |
| /** Returns the engine's stack trace of the current execute position. Line break is the delimiter. |
| */ |
| sequence<string> getStackTrace(); |
| |
| //------------------------------------------------------------------------- |
| /** returns more detailed information about a specified stack frame. |
| |
| @param nCallStackPos |
| specifies the position in the call stack for the |
| variables that should be delivered. |
| */ |
| com::sun::star::script::ContextInformation getContextInformation( [in] short nCallStackPos ); |
| |
| //------------------------------------------------------------------------- |
| /** returns the value of the variable at the given stack position. |
| */ |
| string dumpVariable( [in] string aVariableName, |
| [in] short nCallStackPos ); |
| |
| //------------------------------------------------------------------------- |
| /** sets the value of the specified variable within the specified |
| stack frame. |
| */ |
| void setVariable( [in] string aVariableName, |
| [in] string aValue, |
| [in] short nCallStackPos ); |
| |
| //------------------------------------------------------------------------- |
| /** returns whether the given variable exists within the specified stack frame. |
| */ |
| boolean isVariable( [in] string aVariableName, |
| [in] short nCallStackPos ); |
| |
| //------------------------------------------------------------------------- |
| /** stops the execution of the interpreter. |
| |
| <p>To continue with the execution, call <method>XDebugging::doContinue</method>. |
| */ |
| void stop(); |
| |
| //------------------------------------------------------------------------- |
| /** executes the next and only the next statement. |
| |
| <p>If the next statement is a function call, the function is |
| executed completely.</p> |
| */ |
| void stepOver(); |
| |
| //------------------------------------------------------------------------- |
| /** executes the next and only the next statement. |
| |
| <p>If the next statement is a function call, only the function |
| entered.</p> |
| */ |
| void stepIn(); |
| |
| //------------------------------------------------------------------------- |
| /** executes the program until the next return from this stack frame. |
| */ |
| void stepOut(); |
| |
| //------------------------------------------------------------------------- |
| /** continues the program execution. |
| */ |
| void doContinue(); |
| |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |