Deprecating Slice Definitions

All Slice compilers support a metadata directive that allows you to deprecate a Slice definition. For example:

interface Example {
    ["deprecate:someOperation() has been deprecated, use alternativeOperation() instead."]
    void someOperation();

    void alternativeOperation();

The ["deprecate"] metadata directive causes the compiler to emit code that generates a warning if you compile application code that uses a deprecated feature. This is useful if you want to remove a feature from a Slice definition but do not want to cause a hard error.

The message that follows the colon is optional; if you omit the message and use ["deprecate"], the Slice compilers insert a default message into the generated code.

You can apply the ["deprecate"] metadata directive to Slice constructs other than operations (for example, a structure or sequence definition).

See Also