fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / udkapi / com / sun / star / reflection / XIdlArray.idl
blob6f2afcd8a412f2f2caab78c5b7ae2f71431e971e
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 .
19 #ifndef __com_sun_star_reflection_XIdlArray_idl__
20 #define __com_sun_star_reflection_XIdlArray_idl__
22 #include <com/sun/star/uno/XInterface.idl>
24 #include <com/sun/star/lang/IllegalArgumentException.idl>
26 #include <com/sun/star/lang/ArrayIndexOutOfBoundsException.idl>
30 module com { module sun { module star { module reflection {
33 /** Reflects an IDL sequence and provides dynamic access to instances of
34 that sequence.
35 This interface supports widening conversion when getting or setting elements.
37 @attention
38 Although the name of this interface denotes arrays,
39 sequences are meant. Don't be obfuscated, arrays are not supported by UNO!
41 published interface XIdlArray: com::sun::star::uno::XInterface
43 /** Rellocates the length of the sequence instance.
45 @param array
46 sequence instance
47 @param length
48 new length of sequence
50 void realloc(
51 [inout] any array,
52 [in] long length )
53 raises( com::sun::star::lang::IllegalArgumentException );
55 /** Returns the length of the given sequence.
57 @param array
58 sequence instance
59 @return
60 length of sequence
62 long getLen( [in] any array )
63 raises( com::sun::star::lang::IllegalArgumentException );
65 /** Returns element at given index.
67 @param aArray
68 sequence instance
69 @param nIndex
70 index
71 @return
72 value
74 @throws IllegalArgumentException
75 if the specified object is not a sequence or if the specified object is null
77 @throws ArrayIndexOutOfBoundsException
78 if the specified index argument is negative, or if it is greater than or equal to the
79 length of the specified sequence.
81 any get(
82 [in] any aArray,
83 [in] long nIndex )
84 raises( com::sun::star::lang::IllegalArgumentException,
85 com::sun::star::lang::ArrayIndexOutOfBoundsException );
87 /** Sets a new value at given index.
89 @param aArray
90 sequence instance
91 @param nIndex
92 index
93 @param aNewValue
94 new value to be set
96 @throws IllegalArgumentException
97 if the specified object is not a sequence or if the specified object is null
99 @throws ArrayIndexOutOfBoundsException
100 if the specified index argument is negative, or if it is greater than or equal to the
101 length of the specified sequence.
103 void set(
104 [inout] any aArray,
105 [in] long nIndex,
106 [in] any aNewValue )
107 raises( com::sun::star::lang::IllegalArgumentException,
108 com::sun::star::lang::ArrayIndexOutOfBoundsException );
112 }; }; }; };
114 #endif
116 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */