/*************************************************************************
 *
 *  OpenOffice.org - a multi-platform office productivity suite
 *
 *  $RCSfile: ContextInformation.idl,v $
 *
 *  $Revision: 1.9 $
 *
 *  last change: $Author: rt $ $Date: 2005-09-09 16:11:47 $
 *
 *  The Contents of this file are made available subject to
 *  the terms of GNU Lesser General Public License Version 2.1.
 *
 *
 *    GNU Lesser General Public License Version 2.1
 *    =============================================
 *    Copyright 2005 by Sun Microsystems, Inc.
 *    901 San Antonio Road, Palo Alto, CA 94303, USA
 *
 *    This library is free software; you can redistribute it and/or
 *    modify it under the terms of the GNU Lesser General Public
 *    License version 2.1, as published by the Free Software Foundation.
 *
 *    This library is distributed in the hope that it will be useful,
 *    but WITHOUT ANY WARRANTY; without even the implied warranty of
 *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *    Lesser General Public License for more details.
 *
 *    You should have received a copy of the GNU Lesser General Public
 *    License along with this library; if not, write to the Free Software
 *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 *    MA  02111-1307  USA
 *
 ************************************************************************/
#ifndef __com_sun_star_script_ContextInformation_idl__
#define __com_sun_star_script_ContextInformation_idl__


//=============================================================================

 module com {  module sun {  module star {  module script {

//=============================================================================
/** provides information about a certain stack frame.

    @deprecated
 */
published struct ContextInformation
{
    /** Full qualified name to adress the module or function associated with the context.
        If the module or function can't be adressed by name, e.g., in case that a runtime
        generated eval-module is executed, this string is empty
     */
    string Name;

    //-------------------------------------------------------------------------
    /** Source code of the Module, that is associated with the context. If the source can
        be accessed using the ModuleName or if the source is unknown (executing compiled
        code) this string can be empty.
     */
    string SourceCode;

    //-------------------------------------------------------------------------
    /** contains the first line in the module's source code associated with
        the context.

        <p>If "name" addresses a function, all line and column values
        are nevertheless given relative to the module's source. If
        source code is not available, this value addresses a binary
        position in the compiled code.  </p>

        @see XLibraryAccess::getModuleCode
        @see XLibraryAccess::getFunctionCode
     */
    long StartLine;

    //-------------------------------------------------------------------------
    /** contains the first column in the <var>StartLine</var> associated with
        the context.
     */
    long StartColumn;

    //-------------------------------------------------------------------------

    /** contains the last line in the module's source code associated with
        the context.
     */
    long EndLine;

    //-------------------------------------------------------------------------
    /** contains the first column in the <var>EndLine</var> that is NOT
        associated with the context.
     */
    long EndColumn;

    //-------------------------------------------------------------------------
    /** Get all names of the local variable in this context.
     */
    sequence<string> LocalVariableNames;

};

//=============================================================================

}; }; }; };

#endif
