Merge pull request #2222 from jwillemsen/jwi-dllexportwarning
[ACE_TAO.git] / TAO / tests / Bug_3524_Regression / test.idl
blobd1825472e58c7e0624611597261a2bfee2a702f2
1 #include "tao/StringSeq.pidl"
3 module Test
5 const short BOUND = 10;
6 const string FailStr = "A string longer then Test::BOUND";
8 typedef string<BOUND> bounded_string;
10 typedef sequence<bounded_string> seq_bd_str;
11 typedef sequence<string<BOUND> > seq_bds_str;
13 typedef bounded_string arr_bd_str[1];
14 typedef string<BOUND> arr_bds_str[1];
16 struct sct {
17 string a;
18 bounded_string b;
19 bounded_string c;
22 enum string_field {
23 PLAIN,
24 BOUNDED,
25 TYPEDEFED
28 union unn switch (string_field) {
29 case BOUNDED:
30 bounded_string b;
31 case TYPEDEFED:
32 bounded_string c;
33 default:
34 string a;
37 exception exc {
38 string a;
39 bounded_string b;
40 bounded_string c;
43 valuetype val_bd_str bounded_string;
44 valuetype val_bds_str bounded_string;
45 valuetype val_arr_bd_str arr_bds_str;
47 valuetype vtp {
48 public string a;
49 public bounded_string b;
50 public bounded_string c;
53 interface A
55 enum FailOn {
56 ARG1,
57 ARG2,
58 ARG3,
59 RETN
62 bounded_string method (in FailOn where,
63 in bounded_string arg1,
64 out bounded_string arg2,
65 inout bounded_string arg3);
66 bounded_string method_s (in FailOn where,
67 in bounded_string arg1,
68 out bounded_string arg2,
69 inout bounded_string arg3);
70 // Operations on strings.
72 seq_bd_str seq_method (in FailOn where,
73 in seq_bd_str arg1,
74 out seq_bd_str arg2,
75 inout seq_bd_str arg3);
76 seq_bds_str seq_method_s (in FailOn where,
77 in seq_bds_str arg1,
78 out seq_bds_str arg2,
79 inout seq_bds_str arg3);
80 // Operations on sequences.
82 arr_bd_str arr_method (in FailOn where,
83 in arr_bd_str arg1,
84 out arr_bd_str arg2,
85 inout arr_bd_str arg3);
86 arr_bds_str arr_method_s (in FailOn where,
87 in arr_bds_str arg1,
88 out arr_bds_str arg2,
89 inout arr_bds_str arg3);
90 // Operations on arrays.
92 sct sct_method (in FailOn where,
93 in sct arg1,
94 out sct arg2,
95 inout sct arg3);
96 // Operation on structs.
98 unn unn_method (in FailOn where,
99 in unn arg1,
100 out unn arg2,
101 inout unn arg3);
102 // Operation on unions.
104 val_bd_str vbx_method (in FailOn where,
105 in val_bd_str arg1,
106 out val_bd_str arg2,
107 inout val_bd_str arg3);
108 val_bds_str vbx_method_s (in FailOn where,
109 in val_bds_str arg1,
110 out val_bds_str arg2,
111 inout val_bds_str arg3);
112 // Operations on value boxes.
114 vtp vtp_method (in FailOn where,
115 in vtp arg1,
116 out vtp arg2,
117 inout vtp arg3);
118 // Operation on value types.
120 void exc_method (in string_field f)
121 raises (exc);
122 // Operation that throws.
124 oneway void shutdown ();
125 // shutdown the ORB