diff options
Diffstat (limited to 'ACE/TAO/tests/Bug_3524_Regression/test.idl')
-rw-r--r-- | ACE/TAO/tests/Bug_3524_Regression/test.idl | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/ACE/TAO/tests/Bug_3524_Regression/test.idl b/ACE/TAO/tests/Bug_3524_Regression/test.idl new file mode 100644 index 00000000000..b635b236afc --- /dev/null +++ b/ACE/TAO/tests/Bug_3524_Regression/test.idl @@ -0,0 +1,127 @@ +// $Id: test.idl,v 1.1 2003/08/27 22:43:35 vz Exp + +module Test +{ + const short BOUND = 10; + const string FailStr = "A string longer then Test::BOUND"; + + typedef string<BOUND> bounded_string; + + typedef sequence<bounded_string> seq_bd_str; + typedef sequence<string<BOUND> > seq_bds_str; + + typedef bounded_string arr_bd_str[1]; + typedef string<BOUND> arr_bds_str[1]; + + struct sct { + string a; + string<BOUND> b; + bounded_string c; + }; + + enum string_field { + PLAIN, + BOUNDED, + TYPEDEFED + }; + + union unn switch (string_field) { + case BOUNDED: + string<BOUND> b; + case TYPEDEFED: + bounded_string c; + default: + string a; + }; + + exception exc { + string a; + string<BOUND> b; + bounded_string c; + }; + + valuetype val_bd_str bounded_string; + valuetype val_bds_str string<BOUND>; + valuetype val_arr_bd_str arr_bds_str; + + valuetype vtp { + public string a; + public string<BOUND> b; + public bounded_string c; + }; + + interface A + { + enum FailOn { + ARG1, + ARG2, + ARG3, + RETN + }; + + bounded_string method (in FailOn where, + in bounded_string arg1, + out bounded_string arg2, + inout bounded_string arg3); + string<BOUND> method_s (in FailOn where, + in string<BOUND> arg1, + out string<BOUND> arg2, + inout string<BOUND> arg3); + // Operations on strings. + + seq_bd_str seq_method (in FailOn where, + in seq_bd_str arg1, + out seq_bd_str arg2, + inout seq_bd_str arg3); + seq_bds_str seq_method_s (in FailOn where, + in seq_bds_str arg1, + out seq_bds_str arg2, + inout seq_bds_str arg3); + // Operations on sequences. + + arr_bd_str arr_method (in FailOn where, + in arr_bd_str arg1, + out arr_bd_str arg2, + inout arr_bd_str arg3); + arr_bds_str arr_method_s (in FailOn where, + in arr_bds_str arg1, + out arr_bds_str arg2, + inout arr_bds_str arg3); + // Operations on arrays. + + sct sct_method (in FailOn where, + in sct arg1, + out sct arg2, + inout sct arg3); + // Operation on structs. + + unn unn_method (in FailOn where, + in unn arg1, + out unn arg2, + inout unn arg3); + // Operation on unions. + + val_bd_str vbx_method (in FailOn where, + in val_bd_str arg1, + out val_bd_str arg2, + inout val_bd_str arg3); + val_bds_str vbx_method_s (in FailOn where, + in val_bds_str arg1, + out val_bds_str arg2, + inout val_bds_str arg3); + // Operations on value boxes. + + vtp vtp_method (in FailOn where, + in vtp arg1, + out vtp arg2, + inout vtp arg3); + // Operation on value types. + + void exc_method (in string_field f) + raises (exc); + // Operation that throws. + + oneway void shutdown (); + // shutdown the ORB + }; +}; |