diff options
Diffstat (limited to 'udkapi/com/sun/star/script/XDebugging.idl')
-rw-r--r-- | udkapi/com/sun/star/script/XDebugging.idl | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/udkapi/com/sun/star/script/XDebugging.idl b/udkapi/com/sun/star/script/XDebugging.idl new file mode 100644 index 000000000..ace72cc29 --- /dev/null +++ b/udkapi/com/sun/star/script/XDebugging.idl @@ -0,0 +1,127 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_script_XDebugging_idl__ +#define __com_sun_star_script_XDebugging_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +#include <com/sun/star/script/ContextInformation.idl> + + + + module com { module sun { module star { module script { + +/** 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. + + @param aSourceCode the expression to be evaluated. + + @param nCallStackPos 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. + + @returns the value of the expression as string. + */ + 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 XDebugging::doContinue(). + */ + 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 + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |