Klasę można przekonwertować na jedną z jej podklas (tzw. rzutowanie typu) za pomocą składni NewReference := type_to_cast_to[Reference], gdzie type_to_cast_to jest typem, którego chcesz użyć. Jest to wyrażenie zawodne, ponieważ konwersja typu nie powiedzie się, jeśli obiektu nie da się skonwertować do danego typu, gdy na przykład klasa jest innego typu niż podklasa.
Poniższy przykład pokazuje, jak przekonwertować TaggedDevice, który ma typ creative_device_base, na typ customizable_light_device, tak aby można było korzystać z jego określonych funkcji. Jeśli TaggedDevice nie jest urządzeniem Customizable Light, wówczas nie wywoła funkcji TurnOn().
if (LightDevice := customizable_light_device[TaggedDevice]):
LightDevice.TurnOn()