//
// Copyright (c) 1997 X/Open Company Ltd., A member of The Open Group.
//
// All rights reserved. No part of this source code may be reproduced,
// stored in a retrieval system, or transmitted, in any form or by any
// means, electronic, mechanical, photocopying, recording or otherwise,
// except as stated in the end-user licence agreement, without the prior
// permission of the copyright owners.
//
// Developed for X/Open by ApTest Ireland Limited.
//
// Project: CORVAL2
//


module Apple{
  struct BlackCherry{
    octet Carrots;
    Object  Lemon;
  };


  enum Starfruit{
    Rhubarb,
    PassionFruit,
    Pumpkin,
    Mango
  };


  typedef sequence<short > WaterMelon;

};

typedef any BlackEyedBeans;

typedef unsigned long Dates;

union Cabbage switch (char) {
  case 'a':
    double Coconut;
  default :
    float Lychees;
};


const boolean Cucumber=TRUE;


const boolean Ginger=FALSE;



interface idlServer{

  exception Asparagus{
    ::Dates Leek;
  };

  readonly attribute string Mint;

  void  GardenPeas(
    out   ::BlackEyedBeans p1,
    inout ::BlackEyedBeans p2
  ) raises (Asparagus);

  oneway void  Banana(
    in    ::BlackEyedBeans p1
  ) context ("Orange");
};

