tdf#130857 qt weld: Implement QtInstanceWidget::strip_mnemonic
[LibreOffice.git] / udkapi / com / sun / star / reflection / XIdlMethod.idl
blob0d814796d10200d566e7977d8336cf9e652d20b2
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
22 module com { module sun { module star { module reflection {
24 published interface XIdlClass;
27 /** Reflects an IDL interface method.
29 published interface XIdlMethod: com::sun::star::reflection::XIdlMember
31 /** Returns the return type of the reflected method.
33 @return
34 return type of reflected method
36 XIdlClass getReturnType();
38 /** Returns the formal parameter types of the reflected method in order of IDL
39 declaration.
41 @return
42 formal parameter types of reflected method
44 sequence<XIdlClass> getParameterTypes();
46 /** Returns formal parameter information of the reflected method
47 in order of IDL declaration.
48 Parameter information reflects the parameter's access mode (in, out, inout),
49 the parameter's name and formal type.
51 @return
52 parameter information of reflected method
54 sequence<ParamInfo> getParameterInfos();
56 /** Returns the declared exceptions types of the reflected method.
58 @return
59 declared exception types of reflected method
61 sequence<com::sun::star::reflection::XIdlClass> getExceptionTypes();
63 /** Returns the method mode in which calls are run, i.e. either oneway or
64 twoway. Method mode oneway denotes that a call may be run asynchronously
65 (thus having no out parameters or return value)
67 @return
68 method mode of reflected method
70 com::sun::star::reflection::MethodMode getMode();
72 /** Invokes the reflected method on a given object with the given parameters.
73 The parameters may be widening converted to fit their exact IDL type,
74 meaning no loss of information.
76 @param obj
77 object to call on
78 @param args
79 arguments passed to the method
80 @return
81 return value of the method call (may be empty for methods returning void)
83 @throws IllegalArgumentException
84 if the given object is a nuull reference or does not support the reflected
85 method's interface
86 @throws IllegalArgumentException
87 if the given number of arguments differ from the expected number
88 or the given arguments' types differ from the expected ones (even a
89 widening conversion was not possible)
90 @throws InvocationTargetException
91 if the reflected method that has been invoked has thrown an exception.
92 The original exception will be wrapped up and signalled by the
93 InvocationTargetException
95 any invoke(
96 [in] any obj,
97 [inout] sequence<any> args )
98 raises( com::sun::star::lang::IllegalArgumentException,
99 com::sun::star::reflection::InvocationTargetException );
103 }; }; }; };
105 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */