1 //
2 // Copyright (c) ZeroC, Inc. All rights reserved.
3 //
4 
5 namespace Ice
6 {
7     /// <summary>
8     /// SlicedData holds the slices of unknown class or exception types.
9     /// </summary>
10     public class SlicedData
11     {
SlicedData(SliceInfo[] slices)12         public SlicedData(SliceInfo[] slices)
13         {
14             this.slices = slices;
15         }
16 
17         /**
18          * The details of each slice, in order of most-derived to least-derived.
19          **/
20         public SliceInfo[] slices;
21     }
22 
23     /// <summary>
24     /// SliceInfo encapsulates the details of a slice for an unknown class or exception type.
25     /// </summary>
26     public class SliceInfo
27     {
28         /// <summary>
29         /// The Slice type ID for this slice.
30         /// </summary>
31         public string typeId;
32 
33         /// <summary>
34         /// The Slice compact type ID for this slice.
35         /// </summary>
36         public int compactId;
37 
38         /// <summary>
39         /// The encoded bytes for this slice, including the leading size integer.
40         /// </summary>
41         public byte[] bytes;
42 
43         /// <summary>
44         /// The class instances referenced by this slice.
45         /// </summary>
46         public Value[] instances;
47 
48         /// <summary>
49         /// Whether or not the slice contains optional members.
50         /// </summary>
51         public bool hasOptionalMembers;
52 
53         /// <summary>
54         /// Whether or not this is the last slice.
55         /// </summary>
56         public bool isLastSlice;
57     }
58 }
59