2 * This file is part of the LibreOffice project.
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 * This file incorporates work covered by the following license notice:
10 * Licensed to the Apache Software Foundation (ASF) under one or more
11 * contributor license agreements. See the NOTICE file distributed
12 * with this work for additional information regarding copyright
13 * ownership. The ASF licenses this file to you under the Apache
14 * License, Version 2.0 (the "License"); you may not use this file
15 * except in compliance with the License. You may obtain a copy of
16 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 #include
<com
/sun
/star
/uno
/XInterface.idl
>
33 struct StructB
: StructA
39 struct StructC
: StructB
42 sequence
<com
::sun
::star
::uno
::XInterface
> aInterfaceSeq
;
45 exception ExceptionB
: ExceptionA
50 interface XInterface1
: com
::sun
::star
::uno
::XInterface
54 exception ExceptionC
: ExceptionB
56 XInterface1 aInterface1
;
61 enum EnumA
{ VAL_1
, VAL_2
, VAL_3
= 17};
68 const boolean aConstBoolean
= True
;
69 const byte aConstByte
= 0;
70 const short aConstShort
= -1;
71 const unsigned short aConstUShort
= 1;
72 const long aConstLong
= -2;
73 const unsigned long aConstULong
= 2;
74 // const hyper aConstHyper = -3;
75 // const unsigned hyper aConstUHyper = 3;
76 const float aConstFloat
= 3.14;
77 const double aConstDouble
= 3.14e-10;
80 interface XInterfaceA
: com
::sun
::star
::uno
::XInterface
83 void methodB
([in] short aShort
);
84 sequence
<ModuleA
::StructB
> methodC
([in] ModuleA
::StructC aStructC
, [inout
] ModuleA
::StructA aStructA
);
87 interface XInterfaceB
: XInterfaceA
89 [attribute
] string aString
;
91 XInterfaceA methodD
([in] ModuleA
::ModuleB
::EnumA aEnumA
) raises
(ModuleA
::ExceptionA
, ModuleA
::ExceptionB
, ModuleA
::ExceptionC
);