diff options
Diffstat (limited to 'js/test/Ice/inheritanceBidir/Test.ice')
-rw-r--r-- | js/test/Ice/inheritanceBidir/Test.ice | 241 |
1 files changed, 241 insertions, 0 deletions
diff --git a/js/test/Ice/inheritanceBidir/Test.ice b/js/test/Ice/inheritanceBidir/Test.ice new file mode 100644 index 00000000000..09b3d2f6d19 --- /dev/null +++ b/js/test/Ice/inheritanceBidir/Test.ice @@ -0,0 +1,241 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +#pragma once + +module Test +{ + +module MA +{ + +interface IA +{ + IA* iaop(IA* p); +}; + +class CA +{ + CA* caop(CA* p); +}; + +}; + +module MB +{ + +interface IB1 extends MA::IA +{ + IB1* ib1op(IB1* p); +}; + +interface IB2 extends MA::IA +{ + IB2* ib2op(IB2* p); +}; + +class CB extends MA::CA +{ + CB* cbop(CB* p); +}; + +}; + +module MA +{ + +interface IC extends MB::IB1, MB::IB2 +{ + IC* icop(IC* p); +}; + +class CC extends MB::CB +{ + CC* ccop(CC* p); +}; + +class CD extends CC implements MB::IB1, MB::IB2 +{ + CD* cdop(CD* p); +}; + +}; + +interface Initial +{ + void shutdown(); + MA::CA* caop(); + MB::CB* cbop(); + MA::CC* ccop(); + MA::CD* cdop(); + MA::IA* iaop(); + MB::IB1* ib1op(); + MB::IB2* ib2op(); + MA::IC* icop(); +}; + + +module MC +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +module MD +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +module ME +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +module MF +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +module MG +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +module MH +{ + +class A +{ + int aA; +}; + +class B extends A +{ + int bB; +}; + +class C extends B +{ + int cC; +}; + +class D extends C +{ + int dD; +}; + +}; + +interface Echo +{ + void startBatch(); + void flushBatch(); + void shutdown(); +}; + +}; |