summaryrefslogtreecommitdiff
path: root/TAO/tests/Bug_2804_Regression/Test.idl
blob: 91f18412c076cd7a0886cc5c4dcb85130c9414b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//
// $Id$
//

#include "tao/OctetSeq.pidl"

/// Put the interfaces in a module, to avoid global namespace pollution
module Test
{
  exception Recursive_Type_In_Any_Test_Failed {};
  exception Demarshaling_From_Any_Failed {};

  enum ValueSort3 {
    SYMBOL_TYPE,
    SYMBOL_SEQ_TYPE
  };

  struct Symbol;
  typedef sequence<Symbol> SymbolSeq;

  struct Symbol {
    SymbolSeq args;
  };

  union NonRecursiveUnionWithStringStruct3 switch (ValueSort3) {
  case SYMBOL_TYPE:
    Symbol symbol_val;
  case SYMBOL_SEQ_TYPE:
    SymbolSeq symbol_seq_val;
  };

  /// Simple test interface.
  interface Hello
  {
    /// Return the any provided as the "in" argument.
    any get_any (in any the_any);

    /// Shutdown the server ORB.
    oneway void shutdown ();
  };
};