aboutsummaryrefslogtreecommitdiffstats
path: root/lib/orber/test/orber_test_server.idl
diff options
context:
space:
mode:
authorNiclas Eklund <[email protected]>2010-09-23 16:06:49 +0200
committerNiclas Eklund <[email protected]>2010-09-23 16:06:49 +0200
commit3cf40cefd44ab6383bd16319c7c6941fd0d0f13c (patch)
treeee39b586a31b8d9e477bc665389c9dbc3e0db30a /lib/orber/test/orber_test_server.idl
parent2261f2a35a758133d3694816bb9bc35f22cc2d46 (diff)
downloadotp-3cf40cefd44ab6383bd16319c7c6941fd0d0f13c.tar.gz
otp-3cf40cefd44ab6383bd16319c7c6941fd0d0f13c.tar.bz2
otp-3cf40cefd44ab6383bd16319c7c6941fd0d0f13c.zip
Added basic tests for recursive uinions and structs.
Diffstat (limited to 'lib/orber/test/orber_test_server.idl')
-rw-r--r--lib/orber/test/orber_test_server.idl25
1 files changed, 24 insertions, 1 deletions
diff --git a/lib/orber/test/orber_test_server.idl b/lib/orber/test/orber_test_server.idl
index a88211c941..438c10e19b 100644
--- a/lib/orber/test/orber_test_server.idl
+++ b/lib/orber/test/orber_test_server.idl
@@ -28,7 +28,7 @@ module orber_parent {
};
module orber_test {
-
+
// interface server
interface server : orber_parent::inherrit {
typedef string array[2];
@@ -89,6 +89,23 @@ module orber_test {
const fixed52 fixed52negconst2 = -123.00d;
const fixed52 fixed52negconst3 = -023.00d;
+ struct rec_struct; // Forward declaration
+ typedef sequence<rec_struct> rec_struct_seq;
+ struct rec_struct {
+ rec_struct_seq chain;
+ };
+
+
+ union rec_union; // Forward declaration
+ typedef sequence<rec_union>rec_union_seq;
+
+ enum MyEnum {RecursiveType, NameType};
+
+ union rec_union switch (MyEnum) {
+ case RecursiveType : rec_union_seq chain;
+ case NameType : string aName;
+ };
+
void stop_normal();
void stop_brutal();
@@ -123,6 +140,12 @@ module orber_test {
void testing_iiop_context();
void testing_iiop_server_marshal(inout StrLength6 Str);
+ // Recursive types
+ any testing_iiop_rec_any(in any RecType);
+ rec_struct testing_iiop_rec_struct(in rec_struct RecS);
+ rec_union testing_iiop_rec_union(in rec_union RecU);
+
+
oneway void testing_iiop_oneway_delay(in long Time);
void testing_iiop_twoway_delay(in long Time);