update dev300-m58
[ooovba.git] / udkapi / com / sun / star / reflection / XIdlArray.idl
blobcb6252d2039a51ae08e09dd052b689f72420066a
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XIdlArray.idl,v $
10 * $Revision: 1.13 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_reflection_XIdlArray_idl__
31 #define __com_sun_star_reflection_XIdlArray_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include <com/sun/star/uno/XInterface.idl>
35 #endif
37 #ifndef __com_sun_star_lang_IllegalArgumentException_idl__
38 #include <com/sun/star/lang/IllegalArgumentException.idl>
39 #endif
41 #ifndef __com_sun_star_lang_ArrayIndexOutOfBoundsException_idl__
42 #include <com/sun/star/lang/ArrayIndexOutOfBoundsException.idl>
43 #endif
46 //=============================================================================
48 module com { module sun { module star { module reflection {
50 //=============================================================================
52 /** Reflects an IDL sequence and provides dynamic access to instances of
53 that sequence.
54 This interface supports widening conversion when getting or setting elements.
56 @attention
57 Although the name of this interface denotes arrays,
58 sequences are meant. Don't be obfuscated, arrays are not supported by UNO!
60 published interface XIdlArray: com::sun::star::uno::XInterface
62 /** Rellocates the length of the sequence instance.
64 @param array
65 sequence instance
66 @length
67 new length of sequence
69 void realloc(
70 [inout] any array,
71 [in] long length )
72 raises( com::sun::star::lang::IllegalArgumentException );
74 /** Returns the length of the given sequence.
76 @param array
77 sequence instance
78 @return
79 length of sequence
81 long getLen( [in] any array )
82 raises( com::sun::star::lang::IllegalArgumentException );
84 /** Returns element at given index.
86 @param aArray
87 sequence instance
88 @param nIndex
89 index
90 @return
91 value
93 @throws IllegalArgumentException
94 if the specified object is not a sequence or if the specified object is null
96 @throws ArrayIndexOutOfBoundsException
97 if the specified index argument is negative, or if it is greater than or equal to the
98 length of the specified sequence.
100 any get(
101 [in] any aArray,
102 [in] long nIndex )
103 raises( com::sun::star::lang::IllegalArgumentException,
104 com::sun::star::lang::ArrayIndexOutOfBoundsException );
106 /** Sets a new value at given index.
108 @param aArray
109 sequence instance
110 @param nIndex
111 index
112 @param aNewValue
113 new value to be set
115 @throws IllegalArgumentException
116 if the specified object is not a sequence or if the specified object is null
118 @throws ArrayIndexOutOfBoundsException
119 if the specified index argument is negative, or if it is greater than or equal to the
120 length of the specified sequence.
122 void set(
123 [inout] any aArray,
124 [in] long nIndex,
125 [in] any aNewValue )
126 raises( com::sun::star::lang::IllegalArgumentException,
127 com::sun::star::lang::ArrayIndexOutOfBoundsException );
130 //=============================================================================
132 }; }; }; };
134 /*=============================================================================
136 =============================================================================*/
137 #endif