Classes with Compact Type IDs

As of Ice 3.5, you can optionally associate a numeric identifier with a class. The Ice run time substitutes this value, known as a compact type ID, in place of its equivalent string type ID during marshaling to conserve space. The compact type ID follows immediately after the class name, enclosed in parentheses:

Slice
module MyModule {
class CompactExample(4) {
    // ...
};
};

In this example, the Ice run time marshals the value 4 instead of its string equivalent "::MyModule::CompactExample". The specified value must be a non-negative integer that is unique within the translation unit.

Using values less than 255 produces the most efficient encoding.

See Also