xref: /trunk/main/udkapi/com/sun/star/script/XLibraryAccess.idl (revision ffd38472365e95f6a578737bc9a5eb0fac624a86)
1408a4873SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4408a4873SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5408a4873SAndrew Rist * distributed with this work for additional information
6408a4873SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the
8408a4873SAndrew Rist * "License"); you may not use this file except in compliance
9408a4873SAndrew Rist * with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir *
11408a4873SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir *
13408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing,
14408a4873SAndrew Rist * software distributed under the License is distributed on an
15408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16408a4873SAndrew Rist * KIND, either express or implied.  See the License for the
17408a4873SAndrew Rist * specific language governing permissions and limitations
18408a4873SAndrew Rist * under the License.
19cdf0e10cSrcweir *
20408a4873SAndrew Rist *************************************************************/
21408a4873SAndrew Rist
22408a4873SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_script_XLibraryAccess_idl__
24cdf0e10cSrcweir#define __com_sun_star_script_XLibraryAccess_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir
31cdf0e10cSrcweir//=============================================================================
32cdf0e10cSrcweir
33cdf0e10cSrcweir module com {  module sun {  module star {  module script {
34cdf0e10cSrcweir
35cdf0e10cSrcweir//=============================================================================
36cdf0e10cSrcweir/** provides access to additional scripting code.
37cdf0e10cSrcweir
38cdf0e10cSrcweir    <p>This code is organized in modules and these modules contain
39cdf0e10cSrcweir    the functions. It is possible to get just the code from a function,
40cdf0e10cSrcweir    but you can also get the whole code of a module with all functions in it.</p>
41cdf0e10cSrcweir    @deprecated
42cdf0e10cSrcweir */
43cdf0e10cSrcweirpublished interface XLibraryAccess: com::sun::star::uno::XInterface
44cdf0e10cSrcweir{
45cdf0e10cSrcweir    //-------------------------------------------------------------------------
46cdf0e10cSrcweir    /** returns <TRUE/>, if the function is accessible through this library;
47cdf0e10cSrcweir        otherwise it returns <FALSE/>.
48cdf0e10cSrcweir
49cdf0e10cSrcweir                @param aFunctionName
50*86e1cf34SPedro Giffuni                the fully qualified name of a function.
51cdf0e10cSrcweir                (e.g., "UtilLibrary.ModuleDate.FunctionCurrentDate")
52cdf0e10cSrcweir     */
53cdf0e10cSrcweir    boolean isFunction( [in] string aFunctionName );
54cdf0e10cSrcweir
55cdf0e10cSrcweir    //-------------------------------------------------------------------------
56cdf0e10cSrcweir    /** returns <TRUE/> if a fully qualified function name begins with this name.
57cdf0e10cSrcweir
58cdf0e10cSrcweir                @param aPathName
59cdf0e10cSrcweir                a part of a function name (e.g., "UtilLibrary").
60cdf0e10cSrcweir     */
61cdf0e10cSrcweir    boolean isValidPath( [in] string aPathName );
62cdf0e10cSrcweir
63cdf0e10cSrcweir    //-------------------------------------------------------------------------
64cdf0e10cSrcweir    /** Return all module names which contain code.
65cdf0e10cSrcweir         e.g., { "UtilLibrary.ModuleDate", "UtilLibrary.Output", ... }
66cdf0e10cSrcweir     */
67cdf0e10cSrcweir    sequence<string> getModuleNames();
68cdf0e10cSrcweir
69cdf0e10cSrcweir    //-------------------------------------------------------------------------
70cdf0e10cSrcweir    /** get the source code of a module.
71cdf0e10cSrcweir     */
72cdf0e10cSrcweir    string getModuleSource( [in] string aModulName );
73cdf0e10cSrcweir
74cdf0e10cSrcweir    //-------------------------------------------------------------------------
75cdf0e10cSrcweir    /** Get the hole compiled code of a module.
76cdf0e10cSrcweir
77cdf0e10cSrcweir        @param ModuleName the full qualified name of a module.
78cdf0e10cSrcweir                            (e.g., "UtilLibrary.ModuleDate")
79cdf0e10cSrcweir        @return         an empty sequence, if this module is not found or the
80cdf0e10cSrcweir                            code is not compiled.
81cdf0e10cSrcweir     */
82cdf0e10cSrcweir    sequence<byte> getModuleCode( [in] string aModuleName );
83cdf0e10cSrcweir
84cdf0e10cSrcweir    //-------------------------------------------------------------------------
85cdf0e10cSrcweir    /** get the source code of a function.
86cdf0e10cSrcweir     */
87cdf0e10cSrcweir    string getFunctionSource( [in] string aFunctionName );
88cdf0e10cSrcweir
89cdf0e10cSrcweir    //-------------------------------------------------------------------------
90cdf0e10cSrcweir    /** Get the compiled code of a function.
91cdf0e10cSrcweir
92cdf0e10cSrcweir        @param FunctionName the full qualified name of a function.
93cdf0e10cSrcweir                            (e.g., "UtilLibrary.ModuleDate.Function.CurrentDate")
94cdf0e10cSrcweir        @return         an empty sequence, if this function is not found.
95cdf0e10cSrcweir     */
96cdf0e10cSrcweir    sequence<byte> getFunctionCode( [in] string FunctionName );
97cdf0e10cSrcweir
98cdf0e10cSrcweir};
99cdf0e10cSrcweir
100cdf0e10cSrcweir//=============================================================================
101cdf0e10cSrcweir
102cdf0e10cSrcweir}; }; }; };
103cdf0e10cSrcweir
104cdf0e10cSrcweir#endif
105