1 with Unchecked_Conversion;
\r
3 package Rep_Clause2 is
\r
5 type Tiny is range 0 .. 3;
\r
8 type Small is range 0 .. 255;
\r
9 for Small'Size use 8;
\r
11 type Small_Data is record
\r
15 pragma Pack (Small_Data);
\r
23 for Chunk use record
\r
24 S at 0 range 0 .. 15;
\r
25 C at 2 range 0 .. 7;
\r
28 type Index is range 1 .. 10;
\r
30 type Data_Array is array (Index) of Chunk;
\r
31 for Data_Array'Alignment use 2;
\r
32 pragma Pack (Data_Array);
\r
38 type Bit is range 0 .. 1;
\r
41 type Bit_Array is array (Positive range <>) of Bit;
\r
42 pragma Pack (Bit_Array);
\r
44 type Byte is new Bit_Array (1 .. 8);
\r
45 for Byte'Size use 8;
\r
46 for Byte'Alignment use 1;
\r
49 is new Unchecked_Conversion(Source => Small, Target => Byte);
\r
51 procedure Assign (From : Data; Offset : Positive; I : Index; To : out Bit_Array);
\r