xref: /trunk/main/idlc/test/struct.idl (revision a893be29)
1540d5e64SAndrew Rist/**************************************************************
2540d5e64SAndrew Rist *
3540d5e64SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4540d5e64SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5540d5e64SAndrew Rist * distributed with this work for additional information
6540d5e64SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7540d5e64SAndrew Rist * to you under the Apache License, Version 2.0 (the
8540d5e64SAndrew Rist * "License"); you may not use this file except in compliance
9540d5e64SAndrew Rist * with the License.  You may obtain a copy of the License at
10540d5e64SAndrew Rist *
11540d5e64SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12540d5e64SAndrew Rist *
13540d5e64SAndrew Rist * Unless required by applicable law or agreed to in writing,
14540d5e64SAndrew Rist * software distributed under the License is distributed on an
15540d5e64SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16540d5e64SAndrew Rist * KIND, either express or implied.  See the License for the
17540d5e64SAndrew Rist * specific language governing permissions and limitations
18540d5e64SAndrew Rist * under the License.
19540d5e64SAndrew Rist *
20540d5e64SAndrew Rist *************************************************************/
21540d5e64SAndrew Rist
22cdf0e10cSrcweir/* In this file the idl struct will be tested.
23cdf0e10cSrcweir  bla
24cdf0e10cSrcweir */
25cdf0e10cSrcweir
26cdf0e10cSrcweir/// idlc defines a test module
27cdf0e10cSrcweirmodule idlc
28cdf0e10cSrcweir{
29cdf0e10cSrcweir
30cdf0e10cSrcweir/// test defines a test module
31cdf0e10cSrcweirmodule test
32cdf0e10cSrcweir{
33cdf0e10cSrcweir
34cdf0e10cSrcweirtypedef sequence< long > Id;
35cdf0e10cSrcweir//struct Bla
36cdf0e10cSrcweir//{
37cdf0e10cSrcweir//	long bla;
38cdf0e10cSrcweir//};
39cdf0e10cSrcweir
40cdf0e10cSrcweir/** bla
41*a893be29SPedro Giffuni   BaseStruct defines an * initial struct
42cdf0e10cSrcweir */
43cdf0e10cSrcweirstruct BaseStruct
44cdf0e10cSrcweir{
45cdf0e10cSrcweir	Id Id;
46cdf0e10cSrcweir
47cdf0e10cSrcweir	/// a short  member
48cdf0e10cSrcweir	short  	m1;
49cdf0e10cSrcweir
50cdf0e10cSrcweir	/// a unsigned short  member
51cdf0e10cSrcweir	unsigned short 	m2;
52cdf0e10cSrcweir
53cdf0e10cSrcweir	/// a long member
54cdf0e10cSrcweir	long 	m3;
55cdf0e10cSrcweir
56cdf0e10cSrcweir	/// a unsigned long  member
57cdf0e10cSrcweir	unsigned long 	m4;
58cdf0e10cSrcweir
59cdf0e10cSrcweir	/// a hyper member
60cdf0e10cSrcweir	hyper 	m5;
61cdf0e10cSrcweir
62cdf0e10cSrcweir	/// a unsigned hyper  member
63cdf0e10cSrcweir	unsigned hyper 	m6;
64cdf0e10cSrcweir
65cdf0e10cSrcweir	/// a string member
66cdf0e10cSrcweir	string 	m7;
67cdf0e10cSrcweir
68cdf0e10cSrcweir	/// a byte member
69cdf0e10cSrcweir	byte	m8;
70cdf0e10cSrcweir
71cdf0e10cSrcweir	/// a type member
72cdf0e10cSrcweir	type 	m9;
73cdf0e10cSrcweir
74cdf0e10cSrcweir	/// a float member
75cdf0e10cSrcweir	float 	m10;
76cdf0e10cSrcweir
77cdf0e10cSrcweir	/// a double member
78cdf0e10cSrcweir	double 	m11;
79cdf0e10cSrcweir
80cdf0e10cSrcweir	/// a char member
81cdf0e10cSrcweir	char 	m12;
82cdf0e10cSrcweir
83cdf0e10cSrcweir	/// a boolean member
84cdf0e10cSrcweir	boolean	m13;
85cdf0e10cSrcweir
86cdf0e10cSrcweir	/// a any member
87cdf0e10cSrcweir	any 	m14;
88cdf0e10cSrcweir};
89cdf0e10cSrcweir
90cdf0e10cSrcweirinterface XTestBaseTypes;
91cdf0e10cSrcweir
92cdf0e10cSrcweirtypedef sequence< long > LongSeq;
93cdf0e10cSrcweir
94cdf0e10cSrcweirtypedef sequence< LongSeq > LongSeqSeq;
95cdf0e10cSrcweir
96cdf0e10cSrcweir/** TestStruct deinfes a struct which inherits
97cdf0e10cSrcweir    from the base strcut type BaseStruct.
98cdf0e10cSrcweir*/
99cdf0e10cSrcweirstruct TestStruct : BaseStruct
100cdf0e10cSrcweir{
101cdf0e10cSrcweir	/// a sequence< long > member
102cdf0e10cSrcweir	sequence< long > 	ms1;
103cdf0e10cSrcweir
104cdf0e10cSrcweir	/// a sequence< sequence< long > > member
105cdf0e10cSrcweir	sequence< sequence< long > > 	ms2;
106cdf0e10cSrcweir
107cdf0e10cSrcweir	/// a long array member with dimesion 5,10
108cdf0e10cSrcweir//	long			ms3[5][10];
109cdf0e10cSrcweir
110cdf0e10cSrcweir	/// a string array member with dimension 4,8
111cdf0e10cSrcweir//	long[5][10]		ms4;
112cdf0e10cSrcweir
113cdf0e10cSrcweir	/// an interface member
114cdf0e10cSrcweir	XTestBaseTypes ms5;
115cdf0e10cSrcweir
116cdf0e10cSrcweir	/// a typedef  member
117cdf0e10cSrcweir	LongSeq ms6;
118cdf0e10cSrcweir
119cdf0e10cSrcweir	/// a further typedef  member
120cdf0e10cSrcweir	LongSeqSeq ms7;
121cdf0e10cSrcweir
122cdf0e10cSrcweir	/// a sequence typedef  member
123cdf0e10cSrcweir	sequence<LongSeq> ms8;
124cdf0e10cSrcweir
125cdf0e10cSrcweir};
126cdf0e10cSrcweir
127cdf0e10cSrcweir}; };
128cdf0e10cSrcweir
129