// $Id: test.idl 80377 2008-01-06 19:06:30Z johnnyw $ exception BadInput { string message; }; abstract interface base { string base_op (in string inarg) raises (BadInput); }; interface foo : base { string foo_op (in string inarg) raises (BadInput); }; interface passer { void pass_ops (out base outarg); void pass_state (out base outarg); oneway void shutdown (); }; valuetype BaseNode { public BaseNode left; public BaseNode right; }; valuetype StringNode : BaseNode { public string name; }; valuetype TreeController supports base { public BaseNode root; };