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.
Files changed (236) hide show
  1. data/History.txt +25 -0
  2. data/Manifest.txt +238 -0
  3. data/README.txt +59 -0
  4. data/Rakefile +43 -0
  5. data/bin/omfg +56 -0
  6. data/lib/scanner.rex +169 -0
  7. data/lib/yacc.y +861 -0
  8. data/lib/zomg.rb +22 -0
  9. data/lib/zomg/idl.rb +14 -0
  10. data/lib/zomg/idl/nodes/attribute.rb +15 -0
  11. data/lib/zomg/idl/nodes/binary.rb +19 -0
  12. data/lib/zomg/idl/nodes/constant.rb +15 -0
  13. data/lib/zomg/idl/nodes/interface.rb +13 -0
  14. data/lib/zomg/idl/nodes/interface_header.rb +14 -0
  15. data/lib/zomg/idl/nodes/member.rb +14 -0
  16. data/lib/zomg/idl/nodes/node.rb +54 -0
  17. data/lib/zomg/idl/nodes/operation.rb +17 -0
  18. data/lib/zomg/idl/nodes/parameter.rb +18 -0
  19. data/lib/zomg/idl/nodes/typedef.rb +13 -0
  20. data/lib/zomg/idl/nodes/union.rb +14 -0
  21. data/lib/zomg/idl/parser.rb +54 -0
  22. data/lib/zomg/idl/visitable.rb +15 -0
  23. data/lib/zomg/idl/visitors/duhr.rb +24 -0
  24. data/lib/zomg/idl/visitors/ruby_sexp.rb +204 -0
  25. data/lib/zomg/idl/visitors/sexp.rb +274 -0
  26. data/lib/zomg/version.rb +3 -0
  27. data/test/assets/array/array1.idl +60 -0
  28. data/test/assets/array/array2.idl +38 -0
  29. data/test/assets/array/array3.idl +8 -0
  30. data/test/assets/array/array4.idl +7 -0
  31. data/test/assets/array/array5.idl +80 -0
  32. data/test/assets/attribute/grid_0attribs_2methods.idl +16 -0
  33. data/test/assets/attribute/grid_1ROattribs_1attribs_0methods.idl +19 -0
  34. data/test/assets/attribute/grid_1ROattribs_1attribs_1methods.idl +19 -0
  35. data/test/assets/attribute/grid_1ROattribs_1attribs_2methods.idl +17 -0
  36. data/test/assets/attribute/grid_1ROattribs_1methods.idl +16 -0
  37. data/test/assets/attribute/grid_1ROattribs_2methods.idl +16 -0
  38. data/test/assets/attribute/grid_1attribs_1methods.idl +17 -0
  39. data/test/assets/attribute/grid_1attribs_2methods.idl +17 -0
  40. data/test/assets/attribute/grid_2ROattribs_0methods.idl +16 -0
  41. data/test/assets/attribute/grid_2ROattribs_1methods.idl +16 -0
  42. data/test/assets/attribute/grid_2ROattribs_2methods.idl +16 -0
  43. data/test/assets/attribute/grid_2attribs_0methods.idl +19 -0
  44. data/test/assets/attribute/grid_2attribs_1methods.idl +19 -0
  45. data/test/assets/attribute/grid_2attribs_2methods.idl +19 -0
  46. data/test/assets/comment/c_style_comments.idl +63 -0
  47. data/test/assets/comment/comment1.idl +57 -0
  48. data/test/assets/comment/cpp_style_comments.idl +168 -0
  49. data/test/assets/comment/shortform.idl +0 -0
  50. data/test/assets/complex/TestCodeSets.idl +10 -0
  51. data/test/assets/complex/TestIntfContext.idl +13 -0
  52. data/test/assets/complex/TestIntfLongLong.idl +51 -0
  53. data/test/assets/complex/TestIntfWChar.idl +52 -0
  54. data/test/assets/complex/any1.idl +22 -0
  55. data/test/assets/complex/complex1.idl +495 -0
  56. data/test/assets/complex/complex2.idl +730 -0
  57. data/test/assets/complex/complex3.idl +181 -0
  58. data/test/assets/complex/complex4.idl +181 -0
  59. data/test/assets/complex/interop_wchar.idl +60 -0
  60. data/test/assets/constant/constant1.idl +37 -0
  61. data/test/assets/constant/constant2.idl +29 -0
  62. data/test/assets/constant/constant3.idl +50 -0
  63. data/test/assets/constant/constant4.idl +21 -0
  64. data/test/assets/constant/constant5.idl +65 -0
  65. data/test/assets/constant/constant6.idl +144 -0
  66. data/test/assets/constant/constant7.idl +30 -0
  67. data/test/assets/enum/enum1.idl +13 -0
  68. data/test/assets/exception/TestIntfExceptions.idl +69 -0
  69. data/test/assets/exception/TestIntfExceptionsExt_2_0.idl +34 -0
  70. data/test/assets/exception/TestIntfExceptionsExt_2_3.idl +24 -0
  71. data/test/assets/exception/ex1.idl +6 -0
  72. data/test/assets/exception/ex2.idl +18 -0
  73. data/test/assets/exception/ex3.idl +10 -0
  74. data/test/assets/exception/ex4.idl +20 -0
  75. data/test/assets/exception/sc.idl +0 -0
  76. data/test/assets/exception/simple1.idl +18 -0
  77. data/test/assets/exception/simple2.idl +25 -0
  78. data/test/assets/factory/factory1.idl +77 -0
  79. data/test/assets/factory/objref.idl +25 -0
  80. data/test/assets/forward/forward.idl +15 -0
  81. data/test/assets/forward/forward1.idl +13 -0
  82. data/test/assets/forward/fwd_incl1.idl +6 -0
  83. data/test/assets/forward/fwd_incl2.idl +7 -0
  84. data/test/assets/include/a.idl +23 -0
  85. data/test/assets/include/b.idl +16 -0
  86. data/test/assets/include/employee.idl +12 -0
  87. data/test/assets/include/include1.idl +10 -0
  88. data/test/assets/include/include2.idl +5 -0
  89. data/test/assets/include/manager.idl +10 -0
  90. data/test/assets/include/pragma.idl +41 -0
  91. data/test/assets/include/rookie.idl +13 -0
  92. data/test/assets/include/rookiemanager.idl +15 -0
  93. data/test/assets/include/sample.idl +58 -0
  94. data/test/assets/include/sample_incl.idl +406 -0
  95. data/test/assets/inherit/IDL1.idl +18 -0
  96. data/test/assets/inherit/IDL2.idl +18 -0
  97. data/test/assets/inherit/IDL3.idl +18 -0
  98. data/test/assets/inherit/IDL4.idl +17 -0
  99. data/test/assets/inherit/diamond_inheritance.idl +31 -0
  100. data/test/assets/inherit/inherit.idl +27 -0
  101. data/test/assets/limit/longidentifiers.idl +25 -0
  102. data/test/assets/limit/namelens.idl +26 -0
  103. data/test/assets/limit/tpztest.idl +21 -0
  104. data/test/assets/module/module1.idl +29 -0
  105. data/test/assets/module/module2.idl +34 -0
  106. data/test/assets/module/module3.idl +20 -0
  107. data/test/assets/module/module4.idl +15 -0
  108. data/test/assets/nested/nested1.idl +5 -0
  109. data/test/assets/nested/nested2.idl +11 -0
  110. data/test/assets/operations/Benchmark.idl +331 -0
  111. data/test/assets/operations/CCS.idl +82 -0
  112. data/test/assets/operations/TestIntf.idl +40 -0
  113. data/test/assets/operations/TestIntfBasic.idl +653 -0
  114. data/test/assets/operations/atomic.idl +40 -0
  115. data/test/assets/operations/dif2.idl +48 -0
  116. data/test/assets/operations/interface1.idl +16 -0
  117. data/test/assets/operations/parameters.idl +111 -0
  118. data/test/assets/operations/perf.idl +84 -0
  119. data/test/assets/operations/timer.idl +104 -0
  120. data/test/assets/preprocess/base_for_diamond_inheritance_with_macros.idl +17 -0
  121. data/test/assets/preprocess/basic_macro_marshalling.idl +54 -0
  122. data/test/assets/preprocess/diamond_inheritance_with_macros.idl +74 -0
  123. data/test/assets/preprocess/macro1.idl +52 -0
  124. data/test/assets/preprocess/preprocess1.idl +246 -0
  125. data/test/assets/preprocess/preprocess2.idl +3 -0
  126. data/test/assets/recursion/loop.idl +28 -0
  127. data/test/assets/recursion/recursion1.idl +47 -0
  128. data/test/assets/recursion/recursion2.idl +74 -0
  129. data/test/assets/scenarios/filestat.idl +69 -0
  130. data/test/assets/scenarios/gateway.idl +176 -0
  131. data/test/assets/scenarios/library.idl +20 -0
  132. data/test/assets/scenarios/phone.idl +24 -0
  133. data/test/assets/scenarios/ticketservice.idl +118 -0
  134. data/test/assets/scope/scope01.idl +58 -0
  135. data/test/assets/scope/scope02.idl +25 -0
  136. data/test/assets/scope/scope03.idl +22 -0
  137. data/test/assets/scope/scope04.idl +27 -0
  138. data/test/assets/scope/scope05.idl +30 -0
  139. data/test/assets/scope/scope06.idl +51 -0
  140. data/test/assets/scope/scope07.idl +20 -0
  141. data/test/assets/scope/scope08.idl +88 -0
  142. data/test/assets/scope/scope09.idl +21 -0
  143. data/test/assets/scope/scope10.idl +95 -0
  144. data/test/assets/scope/scope11.idl +62 -0
  145. data/test/assets/scope/scope12.idl +117 -0
  146. data/test/assets/scope/scope13.idl +117 -0
  147. data/test/assets/scope/scope14.idl +117 -0
  148. data/test/assets/scope/scope15.idl +117 -0
  149. data/test/assets/scope/scope16.idl +117 -0
  150. data/test/assets/scope/scope17.idl +117 -0
  151. data/test/assets/scope/scope18.idl +117 -0
  152. data/test/assets/scope/scope19.idl +117 -0
  153. data/test/assets/scope/scope20.idl +215 -0
  154. data/test/assets/scope/scope21.idl +215 -0
  155. data/test/assets/scope/scope22.idl +205 -0
  156. data/test/assets/scope/scope23.idl +261 -0
  157. data/test/assets/scope/scope24.idl +376 -0
  158. data/test/assets/scope/scope25.idl +266 -0
  159. data/test/assets/scope/scope26.idl +180 -0
  160. data/test/assets/scope/scope27.idl +184 -0
  161. data/test/assets/scope/scope28.idl +182 -0
  162. data/test/assets/scope/scope29.idl +182 -0
  163. data/test/assets/scope/scope30.idl +40 -0
  164. data/test/assets/scope/scope31.idl +33 -0
  165. data/test/assets/scope/scope32.idl +37 -0
  166. data/test/assets/scope/scope33.idl +50 -0
  167. data/test/assets/scope/scope34.idl +97 -0
  168. data/test/assets/scope/scope35.idl +72 -0
  169. data/test/assets/scope/scope36.idl +167 -0
  170. data/test/assets/scope/scope37.idl +57 -0
  171. data/test/assets/scope/scope38.idl +38 -0
  172. data/test/assets/scope/scope39.idl +38 -0
  173. data/test/assets/scope/scope40.idl +38 -0
  174. data/test/assets/scope/scope41.idl +24 -0
  175. data/test/assets/scope/scope42.idl +64 -0
  176. data/test/assets/scope/scope43.idl +66 -0
  177. data/test/assets/scope/scope44.idl +52 -0
  178. data/test/assets/sequence/sequence1.idl +24 -0
  179. data/test/assets/sequence/sequence2.idl +9 -0
  180. data/test/assets/simple/basictypes1.idl +80 -0
  181. data/test/assets/simple/basictypes2.idl +197 -0
  182. data/test/assets/simple/basictypes3.idl +23 -0
  183. data/test/assets/simple/basictypes4.idl +73 -0
  184. data/test/assets/simple/basictypes5.idl +29 -0
  185. data/test/assets/simple/basictypes6.idl +63 -0
  186. data/test/assets/simple/simple1.idl +45 -0
  187. data/test/assets/simple/simple2.idl +61 -0
  188. data/test/assets/simple/simple3.idl +36 -0
  189. data/test/assets/string/string1.idl +11 -0
  190. data/test/assets/string/string2.idl +29 -0
  191. data/test/assets/struct/struct1.idl +20 -0
  192. data/test/assets/struct/struct2.idl +21 -0
  193. data/test/assets/struct/struct3.idl +42 -0
  194. data/test/assets/struct/struct4.idl +57 -0
  195. data/test/assets/struct/struct5.idl +71 -0
  196. data/test/assets/typecode/orb.idl +0 -0
  197. data/test/assets/typecode/pseudo.idl +25 -0
  198. data/test/assets/typedef/shorthand_typedef_struct_insideIF.idl +17 -0
  199. data/test/assets/typedef/shorthand_typedef_struct_insideIF_noMO.idl +16 -0
  200. data/test/assets/typedef/shorthand_typedef_struct_insideMO.idl +17 -0
  201. data/test/assets/typedef/shorthand_typedef_struct_outsideMO.idl +17 -0
  202. data/test/assets/typedef/typedef1.idl +8 -0
  203. data/test/assets/typedef/typedef2.idl +22 -0
  204. data/test/assets/typedef/typedef_struct_insideIF.idl +18 -0
  205. data/test/assets/typedef/typedef_struct_insideMO.idl +18 -0
  206. data/test/assets/typedef/typedef_struct_outsideMO.idl +18 -0
  207. data/test/assets/union/union1.idl +31 -0
  208. data/test/assets/union/union2.idl +22 -0
  209. data/test/assets/union/union3.idl +26 -0
  210. data/test/conversions/test_attribute.rb +46 -0
  211. data/test/conversions/test_enum.rb +25 -0
  212. data/test/conversions/test_exception.rb +24 -0
  213. data/test/conversions/test_forward_declaration.rb +22 -0
  214. data/test/conversions/test_interface.rb +30 -0
  215. data/test/conversions/test_module.rb +24 -0
  216. data/test/conversions/test_struct.rb +25 -0
  217. data/test/conversions/test_typedef.rb +22 -0
  218. data/test/conversions/test_union.rb +27 -0
  219. data/test/conversions/test_value_box_dcl.rb +22 -0
  220. data/test/helper.rb +23 -0
  221. data/test/simple/test_basictypes1.rb +87 -0
  222. data/test/simple/test_basictypes2.rb +18 -0
  223. data/test/simple/test_basictypes3.rb +32 -0
  224. data/test/simple/test_basictypes4.rb +25 -0
  225. data/test/simple/test_basictypes5.rb +17 -0
  226. data/test/simple/test_basictypes6.rb +19 -0
  227. data/test/simple/test_simple1.rb +40 -0
  228. data/test/simple/test_simple2.rb +48 -0
  229. data/test/simple/test_simple3.rb +20 -0
  230. data/test/test_array.rb +22 -0
  231. data/test/test_assets.rb +33 -0
  232. data/test/test_complex.rb +17 -0
  233. data/test/test_node.rb +16 -0
  234. data/test/test_parser.rb +17 -0
  235. data/test/test_scanner.rb +234 -0
  236. metadata +334 -0
@@ -0,0 +1,50 @@
1
+
2
+
3
+ typedef struct Avocado{
4
+ float ButterBean;
5
+ float Fig[3];
6
+ double Cinnamon;
7
+ double Cloves[3];
8
+ long BreadFruit;
9
+ long Tarragon[3];
10
+ short BambooShoot;
11
+ short BeechNut[3];
12
+ unsigned long Fennell;
13
+ unsigned long Beetroot[3];
14
+ unsigned short Pineapple;
15
+ unsigned short RedPepper[3];
16
+ char Radish;
17
+ char Susander[3];
18
+ boolean Damsons;
19
+ boolean GreenGrapes[3];
20
+ octet Mullberry;
21
+ octet Corn[3];
22
+ } Banana;
23
+
24
+ interface idlServer {
25
+
26
+ exception BananaExcpt{
27
+ ::Banana ex1;
28
+ };
29
+
30
+ attribute ::Banana BananaAttr;
31
+
32
+ ::Banana BananaOp(
33
+ in ::Banana p1,
34
+ out ::Banana p2,
35
+ inout ::Banana p3
36
+ ) raises (BananaExcpt);
37
+
38
+ exception AvocadoExcpt{
39
+ ::Avocado ex1;
40
+ };
41
+
42
+ attribute ::Avocado AvocadoAttr;
43
+
44
+ ::Avocado AvocadoOp(
45
+ in ::Avocado p1,
46
+ out ::Avocado p2,
47
+ inout ::Avocado p3
48
+ ) raises (AvocadoExcpt);
49
+ };
50
+
@@ -0,0 +1,97 @@
1
+
2
+
3
+ typedef struct Avocado{
4
+ unsigned long ButterBean;
5
+ } Apple;
6
+
7
+ typedef struct Banana{
8
+ float ButterBean[6], ChestNut, Currant[43], CoxPippin, Chervil, Scallion[23], Tomato[8];
9
+ } Peanut, Satsuma[3], RedChilly, Celeriac;
10
+
11
+ interface idlServer {
12
+
13
+ exception AppleExcpt{
14
+ ::Apple ex1;
15
+ };
16
+
17
+ attribute ::Apple AppleAttr;
18
+
19
+ ::Apple AppleOp(
20
+ in ::Apple p1,
21
+ out ::Apple p2,
22
+ inout ::Apple p3
23
+ ) raises (AppleExcpt);
24
+
25
+ exception AvocadoExcpt{
26
+ ::Avocado ex1;
27
+ };
28
+
29
+ attribute ::Avocado AvocadoAttr;
30
+
31
+ ::Avocado AvocadoOp(
32
+ in ::Avocado p1,
33
+ out ::Avocado p2,
34
+ inout ::Avocado p3
35
+ ) raises (AvocadoExcpt);
36
+
37
+ exception PeanutExcpt{
38
+ ::Peanut ex1;
39
+ };
40
+
41
+ attribute ::Peanut PeanutAttr;
42
+
43
+ ::Peanut PeanutOp(
44
+ in ::Peanut p1,
45
+ out ::Peanut p2,
46
+ inout ::Peanut p3
47
+ ) raises (PeanutExcpt);
48
+
49
+ exception SatsumaExcpt{
50
+ ::Satsuma ex1;
51
+ };
52
+
53
+ attribute ::Satsuma SatsumaAttr;
54
+
55
+ ::Satsuma SatsumaOp(
56
+ in ::Satsuma p1,
57
+ out ::Satsuma p2,
58
+ inout ::Satsuma p3
59
+ ) raises (SatsumaExcpt);
60
+
61
+ exception RedChillyExcpt{
62
+ ::RedChilly ex1;
63
+ };
64
+
65
+ attribute ::RedChilly RedChillyAttr;
66
+
67
+ ::RedChilly RedChillyOp(
68
+ in ::RedChilly p1,
69
+ out ::RedChilly p2,
70
+ inout ::RedChilly p3
71
+ ) raises (RedChillyExcpt);
72
+
73
+ exception CeleriacExcpt{
74
+ ::Celeriac ex1;
75
+ };
76
+
77
+ attribute ::Celeriac CeleriacAttr;
78
+
79
+ ::Celeriac CeleriacOp(
80
+ in ::Celeriac p1,
81
+ out ::Celeriac p2,
82
+ inout ::Celeriac p3
83
+ ) raises (CeleriacExcpt);
84
+
85
+ exception BananaExcpt{
86
+ ::Banana ex1;
87
+ };
88
+
89
+ attribute ::Banana BananaAttr;
90
+
91
+ ::Banana BananaOp(
92
+ in ::Banana p1,
93
+ out ::Banana p2,
94
+ inout ::Banana p3
95
+ ) raises (BananaExcpt);
96
+ };
97
+
@@ -0,0 +1,72 @@
1
+
2
+
3
+ typedef struct GreenPepper{
4
+ sequence<float> YellowPepper;
5
+ sequence<float> CoxPippin[3];
6
+ sequence<float,3> Banana;
7
+ sequence<float,3> Currant[3];
8
+ sequence<double> Tomato;
9
+ sequence<double> Celeriac[3];
10
+ sequence<double,3> Corriander;
11
+ sequence<double,3> Broadbeans[3];
12
+ sequence<long> BritishQueens;
13
+ sequence<long> GoldenWonder[3];
14
+ sequence<long,3> MarisPiper;
15
+ sequence<long,3> Apple[3];
16
+ sequence<short> BlackCherry;
17
+ sequence<short> Pumpkin[3];
18
+ sequence<short,3> Dates;
19
+ sequence<short,3> Cucumber[3];
20
+ sequence<unsigned long> Leek;
21
+ sequence<unsigned long> GaliaMelon[3];
22
+ sequence<unsigned long,3> LoganBerry;
23
+ sequence<unsigned long,3> Aniseed[3];
24
+ sequence<unsigned short> Beansprout;
25
+ sequence<unsigned short> Runnerbean[3];
26
+ sequence<unsigned short,3> GrannySmith;
27
+ sequence<unsigned short,3> Billberries[3];
28
+ sequence<char> Sweetcorn;
29
+ sequence<char> KidneyBean[3];
30
+ sequence<char,3> GoldenDelicous;
31
+ sequence<char,3> RedOnion[3];
32
+ sequence<boolean> EggPlant;
33
+ sequence<boolean> Mustard[3];
34
+ sequence<boolean,3> Sweedes;
35
+ sequence<boolean,3> Mangetout[3];
36
+ sequence<octet> Melon;
37
+ sequence<octet> Kumquats[3];
38
+ sequence<octet,3> Waterchestnut;
39
+ sequence<octet,3> Plantain[3];
40
+ string Mangosteen;
41
+ string FrenchBeans[3];
42
+ string<3> Papaya;
43
+ string<3> Grapefruit[3];
44
+ } Peanutsquash[3];
45
+
46
+ interface idlServer {
47
+
48
+ exception PeanutsquashExcpt{
49
+ ::Peanutsquash ex1;
50
+ };
51
+
52
+ attribute ::Peanutsquash PeanutsquashAttr;
53
+
54
+ ::Peanutsquash PeanutsquashOp(
55
+ in ::Peanutsquash p1,
56
+ out ::Peanutsquash p2,
57
+ inout ::Peanutsquash p3
58
+ ) raises (PeanutsquashExcpt);
59
+
60
+ exception GreenPepperExcpt{
61
+ ::GreenPepper ex1;
62
+ };
63
+
64
+ attribute ::GreenPepper GreenPepperAttr;
65
+
66
+ ::GreenPepper GreenPepperOp(
67
+ in ::GreenPepper p1,
68
+ out ::GreenPepper p2,
69
+ inout ::GreenPepper p3
70
+ ) raises (GreenPepperExcpt);
71
+ };
72
+
@@ -0,0 +1,167 @@
1
+
2
+
3
+ typedef struct Avocado{
4
+ struct Mango{
5
+ float ButterBean;
6
+ struct Starfruit{
7
+ double Cinnamon;
8
+ struct Dates{
9
+ long BreadFruit;
10
+ struct Lime{
11
+ short BambooShoot;
12
+ struct Leek{
13
+ unsigned long Fennell;
14
+ struct Ginger{
15
+ unsigned short Pineapple;
16
+ struct Mint{
17
+ char Radish;
18
+ struct GardenPeas{
19
+ boolean Damsons;
20
+ struct Sultana{
21
+ octet Mullberry;
22
+ } Mint;
23
+ } Asparagus;
24
+ } Parsnip;
25
+ } Celery;
26
+ } Aniseed;
27
+ } Pumpkin;
28
+ } Tofu;
29
+ } Onion;
30
+ } Plum;
31
+ } Banana;
32
+
33
+ interface idlServer {
34
+
35
+ exception BananaExcpt{
36
+ ::Banana ex1;
37
+ };
38
+
39
+ attribute ::Banana BananaAttr;
40
+
41
+ ::Banana BananaOp(
42
+ in ::Banana p1,
43
+ out ::Banana p2,
44
+ inout ::Banana p3
45
+ ) raises (BananaExcpt);
46
+
47
+ exception AvocadoExcpt{
48
+ ::Avocado ex1;
49
+ };
50
+
51
+ attribute ::Avocado AvocadoAttr;
52
+
53
+ ::Avocado AvocadoOp(
54
+ in ::Avocado p1,
55
+ out ::Avocado p2,
56
+ inout ::Avocado p3
57
+ ) raises (AvocadoExcpt);
58
+
59
+ exception MangoExcpt{
60
+ ::Avocado::Mango ex1;
61
+ };
62
+
63
+ attribute ::Avocado::Mango MangoAttr;
64
+
65
+ ::Avocado::Mango MangoOp(
66
+ in ::Avocado::Mango p1,
67
+ out ::Avocado::Mango p2,
68
+ inout ::Avocado::Mango p3
69
+ ) raises (MangoExcpt);
70
+
71
+ exception StarfruitExcpt{
72
+ ::Avocado::Mango::Starfruit ex1;
73
+ };
74
+
75
+ attribute ::Avocado::Mango::Starfruit StarfruitAttr;
76
+
77
+ ::Avocado::Mango::Starfruit StarfruitOp(
78
+ in ::Avocado::Mango::Starfruit p1,
79
+ out ::Avocado::Mango::Starfruit p2,
80
+ inout ::Avocado::Mango::Starfruit p3
81
+ ) raises (StarfruitExcpt);
82
+
83
+ exception DatesExcpt{
84
+ ::Avocado::Mango::Starfruit::Dates ex1;
85
+ };
86
+
87
+ attribute ::Avocado::Mango::Starfruit::Dates DatesAttr;
88
+
89
+ ::Avocado::Mango::Starfruit::Dates DatesOp(
90
+ in ::Avocado::Mango::Starfruit::Dates p1,
91
+ out ::Avocado::Mango::Starfruit::Dates p2,
92
+ inout ::Avocado::Mango::Starfruit::Dates p3
93
+ ) raises (DatesExcpt);
94
+
95
+ exception LimeExcpt{
96
+ ::Avocado::Mango::Starfruit::Dates::Lime ex1;
97
+ };
98
+
99
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime LimeAttr;
100
+
101
+ ::Avocado::Mango::Starfruit::Dates::Lime LimeOp(
102
+ in ::Avocado::Mango::Starfruit::Dates::Lime p1,
103
+ out ::Avocado::Mango::Starfruit::Dates::Lime p2,
104
+ inout ::Avocado::Mango::Starfruit::Dates::Lime p3
105
+ ) raises (LimeExcpt);
106
+
107
+ exception LeekExcpt{
108
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek ex1;
109
+ };
110
+
111
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime::Leek LeekAttr;
112
+
113
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek LeekOp(
114
+ in ::Avocado::Mango::Starfruit::Dates::Lime::Leek p1,
115
+ out ::Avocado::Mango::Starfruit::Dates::Lime::Leek p2,
116
+ inout ::Avocado::Mango::Starfruit::Dates::Lime::Leek p3
117
+ ) raises (LeekExcpt);
118
+
119
+ exception GingerExcpt{
120
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger ex1;
121
+ };
122
+
123
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger GingerAttr;
124
+
125
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger GingerOp(
126
+ in ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger p1,
127
+ out ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger p2,
128
+ inout ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger p3
129
+ ) raises (GingerExcpt);
130
+
131
+ exception MintExcpt{
132
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint ex1;
133
+ };
134
+
135
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint MintAttr;
136
+
137
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint MintOp(
138
+ in ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint p1,
139
+ out ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint p2,
140
+ inout ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint p3
141
+ ) raises (MintExcpt);
142
+
143
+ exception GardenPeasExcpt{
144
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas ex1;
145
+ };
146
+
147
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas GardenPeasAttr;
148
+
149
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas GardenPeasOp(
150
+ in ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas p1,
151
+ out ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas p2,
152
+ inout ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas p3
153
+ ) raises (GardenPeasExcpt);
154
+
155
+ exception SultanaExcpt{
156
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana ex1;
157
+ };
158
+
159
+ attribute ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana SultanaAttr;
160
+
161
+ ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana SultanaOp(
162
+ in ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana p1,
163
+ out ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana p2,
164
+ inout ::Avocado::Mango::Starfruit::Dates::Lime::Leek::Ginger::Mint::GardenPeas::Sultana p3
165
+ ) raises (SultanaExcpt);
166
+ };
167
+
@@ -0,0 +1,57 @@
1
+
2
+
3
+ typedef string Apple;
4
+
5
+ typedef string<39> Banana;
6
+
7
+ typedef union Broadbeans switch (long) {
8
+
9
+ case 521*2:
10
+ float ButterBean;
11
+ case 298+2+(3*2):
12
+ double Cinnamon;
13
+ case -57:
14
+ long BreadFruit;
15
+
16
+ case 9875++2:
17
+ short BambooShoot;
18
+ case -7667:
19
+ unsigned long Fennell;
20
+
21
+ case 12-1:
22
+ unsigned short Pineapple;
23
+ case 76:
24
+ char Radish;
25
+ case 75:
26
+ boolean Damsons;
27
+ default :
28
+ octet Mullberry;
29
+ }Orange;
30
+
31
+ interface idlServer {
32
+
33
+ exception BroadbeansExcpt{
34
+ ::Broadbeans ex1;
35
+ };
36
+
37
+ attribute ::Broadbeans BroadbeansAttr;
38
+
39
+ ::Broadbeans BroadbeansOp(
40
+ in ::Broadbeans p1,
41
+ out ::Broadbeans p2,
42
+ inout ::Broadbeans p3
43
+ ) raises (BroadbeansExcpt);
44
+
45
+ exception OrangeExcpt{
46
+ ::Orange ex1;
47
+ };
48
+
49
+ attribute ::Orange OrangeAttr;
50
+
51
+ ::Orange OrangeOp(
52
+ in ::Orange p1,
53
+ out ::Orange p2,
54
+ inout ::Orange p3
55
+ ) raises (OrangeExcpt);
56
+ };
57
+
@@ -0,0 +1,38 @@
1
+
2
+
3
+ union Broadbeans switch (short) {
4
+ default :
5
+ float ButterBean;
6
+ case 28:
7
+ double Cinnamon;
8
+ case 57:
9
+ long BreadFruit;
10
+ case 9875:
11
+ short BambooShoot;
12
+ case 7667:
13
+ unsigned long Fennell;
14
+ case 2213:
15
+ unsigned short Pineapple;
16
+ case 12:
17
+ char Radish;
18
+ case 7:
19
+ boolean Damsons;
20
+ case 23:
21
+ octet Mullberry;
22
+ };
23
+
24
+ interface idlServer {
25
+
26
+ exception BroadbeansExcpt{
27
+ ::Broadbeans ex1;
28
+ };
29
+
30
+ attribute ::Broadbeans BroadbeansAttr;
31
+
32
+ ::Broadbeans BroadbeansOp(
33
+ in ::Broadbeans p1,
34
+ out ::Broadbeans p2,
35
+ inout ::Broadbeans p3
36
+ ) raises (BroadbeansExcpt);
37
+ };
38
+