This attribute is useful to check for membership of a type in a class hierarchy. It can also be used if it is known the type is in a class hierarchy and type-specific processing must take place.
Ref : My_Tagged_Type_Reference; ...
then-- The object pointed at by Ref is in class hierarchy that is rooted at My_Tagged_Type.
all'Tag = My_Tagged_Type'Tag
then-- Object is of type My_Tagged_Type.
else-- Object is of some other type in the hierarchy.
else-- Object is not in the class hierarchy rooted at My_Tagged_Type (it might be of a progenitor type though).