summaryrefslogtreecommitdiff
path: root/trunk/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.idl
blob: 8b020a77e546a77c87625d3f53ec7a384d6587e0 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
// $Id$
/**
 * @file SimpleComponent.idl
 *
 * Tests simple component declarations.
 */

#include <Components.idl>

module VerySimple
{

  component Foo
    {
    };

  home FooHome manages Foo
    {
    };

};

module SupportsInterface
{
  interface foo_interface
    {
    };

  component Foo supports foo_interface
    {
    };

  home FooHome manages Foo
    {
    };

};


module SupportsMultiple
{
  interface foo_interface
    {
    };

  interface bar_interface
    {
    };

  component FooBar supports foo_interface, bar_interface
    {
    };

  home FooBarHome manages FooBar
    {
    };
};

module Inheritance
{
  interface foo_interface
    {
    };

  interface Bar_interface
    {
    };

  component Foo supports foo_interface
    {
    };

  component Bar : Foo
    {
    };

  home FooHome manages Foo
    {
    };

  home BarHome manages Bar
    {
    };


};

module Bug_2790_Regression
{
  // It is legal for a derived component to support an interface
  interface Wibble {};
  interface Wobble {};
  component Bobble {};
  component Bibble : Bobble supports Wibble, Wobble {};
};