aaronp-zomg 1.0.2.20080827232412
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +25 -0
- data/Manifest.txt +238 -0
- data/README.txt +59 -0
- data/Rakefile +43 -0
- data/bin/omfg +56 -0
- data/lib/scanner.rex +169 -0
- data/lib/yacc.y +861 -0
- data/lib/zomg.rb +22 -0
- data/lib/zomg/idl.rb +14 -0
- data/lib/zomg/idl/nodes/attribute.rb +15 -0
- data/lib/zomg/idl/nodes/binary.rb +19 -0
- data/lib/zomg/idl/nodes/constant.rb +15 -0
- data/lib/zomg/idl/nodes/interface.rb +13 -0
- data/lib/zomg/idl/nodes/interface_header.rb +14 -0
- data/lib/zomg/idl/nodes/member.rb +14 -0
- data/lib/zomg/idl/nodes/node.rb +54 -0
- data/lib/zomg/idl/nodes/operation.rb +17 -0
- data/lib/zomg/idl/nodes/parameter.rb +18 -0
- data/lib/zomg/idl/nodes/typedef.rb +13 -0
- data/lib/zomg/idl/nodes/union.rb +14 -0
- data/lib/zomg/idl/parser.rb +54 -0
- data/lib/zomg/idl/visitable.rb +15 -0
- data/lib/zomg/idl/visitors/duhr.rb +24 -0
- data/lib/zomg/idl/visitors/ruby_sexp.rb +204 -0
- data/lib/zomg/idl/visitors/sexp.rb +274 -0
- data/lib/zomg/version.rb +3 -0
- data/test/assets/array/array1.idl +60 -0
- data/test/assets/array/array2.idl +38 -0
- data/test/assets/array/array3.idl +8 -0
- data/test/assets/array/array4.idl +7 -0
- data/test/assets/array/array5.idl +80 -0
- data/test/assets/attribute/grid_0attribs_2methods.idl +16 -0
- data/test/assets/attribute/grid_1ROattribs_1attribs_0methods.idl +19 -0
- data/test/assets/attribute/grid_1ROattribs_1attribs_1methods.idl +19 -0
- data/test/assets/attribute/grid_1ROattribs_1attribs_2methods.idl +17 -0
- data/test/assets/attribute/grid_1ROattribs_1methods.idl +16 -0
- data/test/assets/attribute/grid_1ROattribs_2methods.idl +16 -0
- data/test/assets/attribute/grid_1attribs_1methods.idl +17 -0
- data/test/assets/attribute/grid_1attribs_2methods.idl +17 -0
- data/test/assets/attribute/grid_2ROattribs_0methods.idl +16 -0
- data/test/assets/attribute/grid_2ROattribs_1methods.idl +16 -0
- data/test/assets/attribute/grid_2ROattribs_2methods.idl +16 -0
- data/test/assets/attribute/grid_2attribs_0methods.idl +19 -0
- data/test/assets/attribute/grid_2attribs_1methods.idl +19 -0
- data/test/assets/attribute/grid_2attribs_2methods.idl +19 -0
- data/test/assets/comment/c_style_comments.idl +63 -0
- data/test/assets/comment/comment1.idl +57 -0
- data/test/assets/comment/cpp_style_comments.idl +168 -0
- data/test/assets/comment/shortform.idl +0 -0
- data/test/assets/complex/TestCodeSets.idl +10 -0
- data/test/assets/complex/TestIntfContext.idl +13 -0
- data/test/assets/complex/TestIntfLongLong.idl +51 -0
- data/test/assets/complex/TestIntfWChar.idl +52 -0
- data/test/assets/complex/any1.idl +22 -0
- data/test/assets/complex/complex1.idl +495 -0
- data/test/assets/complex/complex2.idl +730 -0
- data/test/assets/complex/complex3.idl +181 -0
- data/test/assets/complex/complex4.idl +181 -0
- data/test/assets/complex/interop_wchar.idl +60 -0
- data/test/assets/constant/constant1.idl +37 -0
- data/test/assets/constant/constant2.idl +29 -0
- data/test/assets/constant/constant3.idl +50 -0
- data/test/assets/constant/constant4.idl +21 -0
- data/test/assets/constant/constant5.idl +65 -0
- data/test/assets/constant/constant6.idl +144 -0
- data/test/assets/constant/constant7.idl +30 -0
- data/test/assets/enum/enum1.idl +13 -0
- data/test/assets/exception/TestIntfExceptions.idl +69 -0
- data/test/assets/exception/TestIntfExceptionsExt_2_0.idl +34 -0
- data/test/assets/exception/TestIntfExceptionsExt_2_3.idl +24 -0
- data/test/assets/exception/ex1.idl +6 -0
- data/test/assets/exception/ex2.idl +18 -0
- data/test/assets/exception/ex3.idl +10 -0
- data/test/assets/exception/ex4.idl +20 -0
- data/test/assets/exception/sc.idl +0 -0
- data/test/assets/exception/simple1.idl +18 -0
- data/test/assets/exception/simple2.idl +25 -0
- data/test/assets/factory/factory1.idl +77 -0
- data/test/assets/factory/objref.idl +25 -0
- data/test/assets/forward/forward.idl +15 -0
- data/test/assets/forward/forward1.idl +13 -0
- data/test/assets/forward/fwd_incl1.idl +6 -0
- data/test/assets/forward/fwd_incl2.idl +7 -0
- data/test/assets/include/a.idl +23 -0
- data/test/assets/include/b.idl +16 -0
- data/test/assets/include/employee.idl +12 -0
- data/test/assets/include/include1.idl +10 -0
- data/test/assets/include/include2.idl +5 -0
- data/test/assets/include/manager.idl +10 -0
- data/test/assets/include/pragma.idl +41 -0
- data/test/assets/include/rookie.idl +13 -0
- data/test/assets/include/rookiemanager.idl +15 -0
- data/test/assets/include/sample.idl +58 -0
- data/test/assets/include/sample_incl.idl +406 -0
- data/test/assets/inherit/IDL1.idl +18 -0
- data/test/assets/inherit/IDL2.idl +18 -0
- data/test/assets/inherit/IDL3.idl +18 -0
- data/test/assets/inherit/IDL4.idl +17 -0
- data/test/assets/inherit/diamond_inheritance.idl +31 -0
- data/test/assets/inherit/inherit.idl +27 -0
- data/test/assets/limit/longidentifiers.idl +25 -0
- data/test/assets/limit/namelens.idl +26 -0
- data/test/assets/limit/tpztest.idl +21 -0
- data/test/assets/module/module1.idl +29 -0
- data/test/assets/module/module2.idl +34 -0
- data/test/assets/module/module3.idl +20 -0
- data/test/assets/module/module4.idl +15 -0
- data/test/assets/nested/nested1.idl +5 -0
- data/test/assets/nested/nested2.idl +11 -0
- data/test/assets/operations/Benchmark.idl +331 -0
- data/test/assets/operations/CCS.idl +82 -0
- data/test/assets/operations/TestIntf.idl +40 -0
- data/test/assets/operations/TestIntfBasic.idl +653 -0
- data/test/assets/operations/atomic.idl +40 -0
- data/test/assets/operations/dif2.idl +48 -0
- data/test/assets/operations/interface1.idl +16 -0
- data/test/assets/operations/parameters.idl +111 -0
- data/test/assets/operations/perf.idl +84 -0
- data/test/assets/operations/timer.idl +104 -0
- data/test/assets/preprocess/base_for_diamond_inheritance_with_macros.idl +17 -0
- data/test/assets/preprocess/basic_macro_marshalling.idl +54 -0
- data/test/assets/preprocess/diamond_inheritance_with_macros.idl +74 -0
- data/test/assets/preprocess/macro1.idl +52 -0
- data/test/assets/preprocess/preprocess1.idl +246 -0
- data/test/assets/preprocess/preprocess2.idl +3 -0
- data/test/assets/recursion/loop.idl +28 -0
- data/test/assets/recursion/recursion1.idl +47 -0
- data/test/assets/recursion/recursion2.idl +74 -0
- data/test/assets/scenarios/filestat.idl +69 -0
- data/test/assets/scenarios/gateway.idl +176 -0
- data/test/assets/scenarios/library.idl +20 -0
- data/test/assets/scenarios/phone.idl +24 -0
- data/test/assets/scenarios/ticketservice.idl +118 -0
- data/test/assets/scope/scope01.idl +58 -0
- data/test/assets/scope/scope02.idl +25 -0
- data/test/assets/scope/scope03.idl +22 -0
- data/test/assets/scope/scope04.idl +27 -0
- data/test/assets/scope/scope05.idl +30 -0
- data/test/assets/scope/scope06.idl +51 -0
- data/test/assets/scope/scope07.idl +20 -0
- data/test/assets/scope/scope08.idl +88 -0
- data/test/assets/scope/scope09.idl +21 -0
- data/test/assets/scope/scope10.idl +95 -0
- data/test/assets/scope/scope11.idl +62 -0
- data/test/assets/scope/scope12.idl +117 -0
- data/test/assets/scope/scope13.idl +117 -0
- data/test/assets/scope/scope14.idl +117 -0
- data/test/assets/scope/scope15.idl +117 -0
- data/test/assets/scope/scope16.idl +117 -0
- data/test/assets/scope/scope17.idl +117 -0
- data/test/assets/scope/scope18.idl +117 -0
- data/test/assets/scope/scope19.idl +117 -0
- data/test/assets/scope/scope20.idl +215 -0
- data/test/assets/scope/scope21.idl +215 -0
- data/test/assets/scope/scope22.idl +205 -0
- data/test/assets/scope/scope23.idl +261 -0
- data/test/assets/scope/scope24.idl +376 -0
- data/test/assets/scope/scope25.idl +266 -0
- data/test/assets/scope/scope26.idl +180 -0
- data/test/assets/scope/scope27.idl +184 -0
- data/test/assets/scope/scope28.idl +182 -0
- data/test/assets/scope/scope29.idl +182 -0
- data/test/assets/scope/scope30.idl +40 -0
- data/test/assets/scope/scope31.idl +33 -0
- data/test/assets/scope/scope32.idl +37 -0
- data/test/assets/scope/scope33.idl +50 -0
- data/test/assets/scope/scope34.idl +97 -0
- data/test/assets/scope/scope35.idl +72 -0
- data/test/assets/scope/scope36.idl +167 -0
- data/test/assets/scope/scope37.idl +57 -0
- data/test/assets/scope/scope38.idl +38 -0
- data/test/assets/scope/scope39.idl +38 -0
- data/test/assets/scope/scope40.idl +38 -0
- data/test/assets/scope/scope41.idl +24 -0
- data/test/assets/scope/scope42.idl +64 -0
- data/test/assets/scope/scope43.idl +66 -0
- data/test/assets/scope/scope44.idl +52 -0
- data/test/assets/sequence/sequence1.idl +24 -0
- data/test/assets/sequence/sequence2.idl +9 -0
- data/test/assets/simple/basictypes1.idl +80 -0
- data/test/assets/simple/basictypes2.idl +197 -0
- data/test/assets/simple/basictypes3.idl +23 -0
- data/test/assets/simple/basictypes4.idl +73 -0
- data/test/assets/simple/basictypes5.idl +29 -0
- data/test/assets/simple/basictypes6.idl +63 -0
- data/test/assets/simple/simple1.idl +45 -0
- data/test/assets/simple/simple2.idl +61 -0
- data/test/assets/simple/simple3.idl +36 -0
- data/test/assets/string/string1.idl +11 -0
- data/test/assets/string/string2.idl +29 -0
- data/test/assets/struct/struct1.idl +20 -0
- data/test/assets/struct/struct2.idl +21 -0
- data/test/assets/struct/struct3.idl +42 -0
- data/test/assets/struct/struct4.idl +57 -0
- data/test/assets/struct/struct5.idl +71 -0
- data/test/assets/typecode/orb.idl +0 -0
- data/test/assets/typecode/pseudo.idl +25 -0
- data/test/assets/typedef/shorthand_typedef_struct_insideIF.idl +17 -0
- data/test/assets/typedef/shorthand_typedef_struct_insideIF_noMO.idl +16 -0
- data/test/assets/typedef/shorthand_typedef_struct_insideMO.idl +17 -0
- data/test/assets/typedef/shorthand_typedef_struct_outsideMO.idl +17 -0
- data/test/assets/typedef/typedef1.idl +8 -0
- data/test/assets/typedef/typedef2.idl +22 -0
- data/test/assets/typedef/typedef_struct_insideIF.idl +18 -0
- data/test/assets/typedef/typedef_struct_insideMO.idl +18 -0
- data/test/assets/typedef/typedef_struct_outsideMO.idl +18 -0
- data/test/assets/union/union1.idl +31 -0
- data/test/assets/union/union2.idl +22 -0
- data/test/assets/union/union3.idl +26 -0
- data/test/conversions/test_attribute.rb +46 -0
- data/test/conversions/test_enum.rb +25 -0
- data/test/conversions/test_exception.rb +24 -0
- data/test/conversions/test_forward_declaration.rb +22 -0
- data/test/conversions/test_interface.rb +30 -0
- data/test/conversions/test_module.rb +24 -0
- data/test/conversions/test_struct.rb +25 -0
- data/test/conversions/test_typedef.rb +22 -0
- data/test/conversions/test_union.rb +27 -0
- data/test/conversions/test_value_box_dcl.rb +22 -0
- data/test/helper.rb +23 -0
- data/test/simple/test_basictypes1.rb +87 -0
- data/test/simple/test_basictypes2.rb +18 -0
- data/test/simple/test_basictypes3.rb +32 -0
- data/test/simple/test_basictypes4.rb +25 -0
- data/test/simple/test_basictypes5.rb +17 -0
- data/test/simple/test_basictypes6.rb +19 -0
- data/test/simple/test_simple1.rb +40 -0
- data/test/simple/test_simple2.rb +48 -0
- data/test/simple/test_simple3.rb +20 -0
- data/test/test_array.rb +22 -0
- data/test/test_assets.rb +33 -0
- data/test/test_complex.rb +17 -0
- data/test/test_node.rb +16 -0
- data/test/test_parser.rb +17 -0
- data/test/test_scanner.rb +234 -0
- metadata +334 -0
@@ -0,0 +1,58 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Apple{
|
4
|
+
struct BlackCherry{
|
5
|
+
octet Carrots;
|
6
|
+
Object Lemon;
|
7
|
+
};
|
8
|
+
|
9
|
+
|
10
|
+
enum Starfruit{
|
11
|
+
Rhubarb,
|
12
|
+
PassionFruit,
|
13
|
+
Pumpkin,
|
14
|
+
Mango
|
15
|
+
};
|
16
|
+
|
17
|
+
|
18
|
+
typedef sequence<short > WaterMelon;
|
19
|
+
|
20
|
+
};
|
21
|
+
|
22
|
+
typedef any BlackEyedBeans;
|
23
|
+
|
24
|
+
typedef unsigned long Dates;
|
25
|
+
|
26
|
+
union Cabbage switch (char) {
|
27
|
+
case 'a':
|
28
|
+
double Coconut;
|
29
|
+
default :
|
30
|
+
float Lychees;
|
31
|
+
};
|
32
|
+
|
33
|
+
|
34
|
+
const boolean Cucumber=TRUE;
|
35
|
+
|
36
|
+
|
37
|
+
const boolean Ginger=FALSE;
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
interface idlServer{
|
42
|
+
|
43
|
+
exception Asparagus{
|
44
|
+
::Dates Leek;
|
45
|
+
};
|
46
|
+
|
47
|
+
readonly attribute string Mint;
|
48
|
+
|
49
|
+
void GardenPeas(
|
50
|
+
out ::BlackEyedBeans p1,
|
51
|
+
inout ::BlackEyedBeans p2
|
52
|
+
) raises (Asparagus);
|
53
|
+
|
54
|
+
oneway void Banana(
|
55
|
+
in ::BlackEyedBeans p1
|
56
|
+
) context ("Orange");
|
57
|
+
};
|
58
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Apple{
|
4
|
+
|
5
|
+
module BlackCherry{
|
6
|
+
typedef short Carrots;
|
7
|
+
};
|
8
|
+
|
9
|
+
typedef long Carrots;
|
10
|
+
|
11
|
+
module BlackCherry{
|
12
|
+
typedef float Starfruit;
|
13
|
+
};
|
14
|
+
|
15
|
+
};
|
16
|
+
|
17
|
+
interface idlServer{
|
18
|
+
|
19
|
+
void Rhubarb(
|
20
|
+
in ::Apple::Carrots p1,
|
21
|
+
out ::Apple::BlackCherry::Carrots p2,
|
22
|
+
inout ::Apple::BlackCherry::Starfruit p3
|
23
|
+
);
|
24
|
+
};
|
25
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
interface idlServer {
|
4
|
+
|
5
|
+
const long Apple = 4;
|
6
|
+
|
7
|
+
typedef float Banana;
|
8
|
+
|
9
|
+
exception Orange{
|
10
|
+
short Starfruit;
|
11
|
+
};
|
12
|
+
|
13
|
+
attribute char Lychees;
|
14
|
+
|
15
|
+
void Lemon();
|
16
|
+
};
|
17
|
+
|
18
|
+
// Empty interfaces are permitted
|
19
|
+
interface emptyInterface
|
20
|
+
{
|
21
|
+
};
|
22
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
interface Banana;
|
4
|
+
|
5
|
+
struct Corn{
|
6
|
+
short Eddo;
|
7
|
+
Banana Yam;
|
8
|
+
long Rasin;
|
9
|
+
float Peach;
|
10
|
+
};
|
11
|
+
|
12
|
+
interface Banana;
|
13
|
+
|
14
|
+
interface Apple {
|
15
|
+
attribute Banana Peanuts;
|
16
|
+
};
|
17
|
+
|
18
|
+
interface Banana {
|
19
|
+
void Orange(in Banana p1);
|
20
|
+
void Basil(out Banana p1);
|
21
|
+
void VineTomatoes(inout Banana p1);
|
22
|
+
};
|
23
|
+
|
24
|
+
interface idlServer : Apple, Banana {
|
25
|
+
idlServer Lemon(in Corn p1);
|
26
|
+
};
|
27
|
+
|
@@ -0,0 +1,30 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
interface Banana {
|
4
|
+
|
5
|
+
const float Apple = 23.4;
|
6
|
+
|
7
|
+
typedef long Dates;
|
8
|
+
|
9
|
+
exception Orange{
|
10
|
+
short Starfruit;
|
11
|
+
};
|
12
|
+
|
13
|
+
};
|
14
|
+
|
15
|
+
interface idlServer: Banana {
|
16
|
+
|
17
|
+
const short Apple = 5;
|
18
|
+
|
19
|
+
typedef struct Dates{
|
20
|
+
char Dill;
|
21
|
+
}Oregano;
|
22
|
+
|
23
|
+
exception Orange{
|
24
|
+
float Aniseed;
|
25
|
+
double Bayleaf;
|
26
|
+
};
|
27
|
+
|
28
|
+
void Lemon(in Dates p1, inout ::Banana::Dates p2) raises (Orange);
|
29
|
+
};
|
30
|
+
|
@@ -0,0 +1,51 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
interface Apple {
|
4
|
+
const long Lemon = 3;
|
5
|
+
typedef long Pumpkin;
|
6
|
+
exception Oregano{
|
7
|
+
long Sultana;
|
8
|
+
};
|
9
|
+
};
|
10
|
+
|
11
|
+
interface Banana : Apple {
|
12
|
+
const short Lemon = 3;
|
13
|
+
typedef short Pumpkin;
|
14
|
+
exception Oregano{
|
15
|
+
short Sultana;
|
16
|
+
};
|
17
|
+
};
|
18
|
+
|
19
|
+
interface Carrots : Apple{
|
20
|
+
const float Lemon = 4.5;
|
21
|
+
typedef float Pumpkin;
|
22
|
+
exception Oregano{
|
23
|
+
float Sultana;
|
24
|
+
};
|
25
|
+
};
|
26
|
+
|
27
|
+
interface Dates : Banana, Carrots{
|
28
|
+
const char Lemon = '6';
|
29
|
+
typedef char Pumpkin;
|
30
|
+
exception Oregano{
|
31
|
+
char Sultana;
|
32
|
+
};
|
33
|
+
};
|
34
|
+
|
35
|
+
|
36
|
+
interface idlServer: Dates {
|
37
|
+
|
38
|
+
typedef short Melon[::Apple::Lemon];
|
39
|
+
|
40
|
+
void Lemon(
|
41
|
+
in Melon p1,
|
42
|
+
inout ::Apple::Pumpkin p2,
|
43
|
+
inout ::Banana::Pumpkin p3,
|
44
|
+
inout ::Carrots::Pumpkin p4,
|
45
|
+
inout ::Dates::Pumpkin p5)
|
46
|
+
raises (::Carrots::Oregano);
|
47
|
+
};
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
@@ -0,0 +1,88 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
interface idlServer {
|
4
|
+
|
5
|
+
void Bayleaf();
|
6
|
+
|
7
|
+
float BlackCherry(
|
8
|
+
in float p1,
|
9
|
+
out float p2,
|
10
|
+
inout float p3
|
11
|
+
);
|
12
|
+
|
13
|
+
double Starfruit(
|
14
|
+
in double p1,
|
15
|
+
out double p2,
|
16
|
+
inout double p3
|
17
|
+
);
|
18
|
+
|
19
|
+
long Rhubarb(
|
20
|
+
in long p1,
|
21
|
+
out long p2,
|
22
|
+
inout long p3
|
23
|
+
);
|
24
|
+
|
25
|
+
short PassionFruit(
|
26
|
+
in short p1,
|
27
|
+
out short p2,
|
28
|
+
inout short p3
|
29
|
+
);
|
30
|
+
|
31
|
+
|
32
|
+
unsigned long Pumpkin(
|
33
|
+
in unsigned long p1,
|
34
|
+
out unsigned long p2,
|
35
|
+
inout unsigned long p3
|
36
|
+
);
|
37
|
+
|
38
|
+
|
39
|
+
unsigned short Mango(
|
40
|
+
in unsigned short p1,
|
41
|
+
out unsigned short p2,
|
42
|
+
inout unsigned short p3
|
43
|
+
);
|
44
|
+
|
45
|
+
|
46
|
+
char WaterMelon(
|
47
|
+
in char p1,
|
48
|
+
out char p2,
|
49
|
+
inout char p3
|
50
|
+
);
|
51
|
+
|
52
|
+
|
53
|
+
boolean Lime(
|
54
|
+
in boolean p1,
|
55
|
+
out boolean p2,
|
56
|
+
inout boolean p3
|
57
|
+
);
|
58
|
+
|
59
|
+
|
60
|
+
octet Dates(
|
61
|
+
in octet p1,
|
62
|
+
out octet p2,
|
63
|
+
inout octet p3
|
64
|
+
);
|
65
|
+
|
66
|
+
|
67
|
+
Object Coconut(
|
68
|
+
in Object p1,
|
69
|
+
out Object p2,
|
70
|
+
inout Object p3
|
71
|
+
);
|
72
|
+
|
73
|
+
|
74
|
+
string Lychees(
|
75
|
+
in string p1,
|
76
|
+
out string p2,
|
77
|
+
inout string p3
|
78
|
+
);
|
79
|
+
|
80
|
+
|
81
|
+
string<20> Cabbage(
|
82
|
+
in string<23> p1,
|
83
|
+
out string<38> p2,
|
84
|
+
inout string<44> p3
|
85
|
+
);
|
86
|
+
|
87
|
+
};
|
88
|
+
|
@@ -0,0 +1,95 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
enum Sweetcorn{
|
4
|
+
Banana,
|
5
|
+
Carrots,
|
6
|
+
Lemon,
|
7
|
+
BlackCherry,
|
8
|
+
Starfruit,
|
9
|
+
Rhubarb
|
10
|
+
};
|
11
|
+
|
12
|
+
exception Mangetout{
|
13
|
+
};
|
14
|
+
|
15
|
+
exception Cress{
|
16
|
+
unsigned long Plum;
|
17
|
+
};
|
18
|
+
|
19
|
+
exception BambooShoot{
|
20
|
+
float Plum;
|
21
|
+
double KidneyBean;
|
22
|
+
long Zucchini;
|
23
|
+
unsigned long ButterBean;
|
24
|
+
short Avocado;
|
25
|
+
unsigned short GoldenDelicous;
|
26
|
+
char Lentil;
|
27
|
+
boolean Fig;
|
28
|
+
octet CrabApple;
|
29
|
+
string RedOnion;
|
30
|
+
string<23> HazelNut;
|
31
|
+
Object Cinnamon;
|
32
|
+
any GooseBerry;
|
33
|
+
};
|
34
|
+
|
35
|
+
typedef struct Guava{
|
36
|
+
float Sultana;
|
37
|
+
} Runnerbean;
|
38
|
+
|
39
|
+
union BrazilNut switch (long) {
|
40
|
+
case 23:
|
41
|
+
Runnerbean Parsnip;
|
42
|
+
case -25:
|
43
|
+
long Celery;
|
44
|
+
default :
|
45
|
+
short WhiteCabbage;
|
46
|
+
};
|
47
|
+
|
48
|
+
exception Cassava{
|
49
|
+
Guava Oregano;
|
50
|
+
Runnerbean Almonds;
|
51
|
+
Guava Mushroom[3];
|
52
|
+
Runnerbean Tofu[1];
|
53
|
+
};
|
54
|
+
|
55
|
+
exception Melon{
|
56
|
+
BrazilNut SweetPotato;
|
57
|
+
BrazilNut Orange[2];
|
58
|
+
sequence<octet> Tangarine;
|
59
|
+
sequence<float> GardenPeas[4];
|
60
|
+
sequence<octet> CantelopeMelon;
|
61
|
+
Sweetcorn Apple;
|
62
|
+
Sweetcorn Onion[5];
|
63
|
+
};
|
64
|
+
|
65
|
+
interface idlServer{
|
66
|
+
|
67
|
+
exception RedGrapes{
|
68
|
+
float Plum[34];
|
69
|
+
double KidneyBean[12];
|
70
|
+
long Zucchini[3];
|
71
|
+
unsigned long ButterBean[6];
|
72
|
+
short Avocado[1];
|
73
|
+
unsigned short GoldenDelicous[32];
|
74
|
+
char Lentil[9];
|
75
|
+
boolean Fig[2];
|
76
|
+
octet CrabApple[13];
|
77
|
+
string RedOnion[2];
|
78
|
+
string<15> HazelNut[1];
|
79
|
+
Object Cinnamon[6];
|
80
|
+
any GooseBerry[2];
|
81
|
+
};
|
82
|
+
|
83
|
+
void JuniperBerries(
|
84
|
+
in long p1,
|
85
|
+
out Sweetcorn p2,
|
86
|
+
inout octet p3
|
87
|
+
) raises (Mangetout);
|
88
|
+
|
89
|
+
void Daikan() raises (Cress, idlServer::RedGrapes);
|
90
|
+
|
91
|
+
void Thyme() raises (Cress, idlServer::RedGrapes);
|
92
|
+
|
93
|
+
void Lettuce() raises (Mangetout, Cress, BambooShoot, Cassava, Melon, RedGrapes);
|
94
|
+
};
|
95
|
+
|