Eine Objektsicht veranlasst den Compiler, eine Objektreferenz (z.B. im Rahmen von Konformitätsprüfungen) so zu behandeln, als ob sie in der angegebenen Form definiert wäre. Durch Überprüfungen zur Laufzeit wird nötigenfalls sichergestellt, dass der aktuelle Inhalt der Objektreferenz die geforderten Eigenschaften hat.
Format
bezeichner-1 AS { [
FACTORY OF] klassenname-1 [ONLY]
| interfacename-11
| UNIVERSAL
}
Syntax-Regeln
bezeichner-1 muss eine Objektreferenz oder ein vordefinierter Objektbezeichner sein, wobei dieser nicht SUPER und nicht NULL oder wieder eine Objektsicht sein darf.
bezeichner-1 darf auch ein Klassenname sein.
Die Objektsicht darf nicht als empfangendes Daten-Element angegeben werden.
Allgemeine Regeln
Eine Objektsicht gibt eine Objektreferenz zurück, welche auf dasselbe Objekt wie bezeichner-1 verweist und für Konformitätsprüfungen die in der AS-Angabe spezifizierte Schnittstelle annimmt.
Ist klassenname-1 ohne einen der optionalen Ausdrücke angegeben, dann ist implizit das Ergebnis USAGE IS OBJECT REFERENCE klassenname-1. Falls das Objekt, auf das bezeichner-1 verweist, kein Objekt von klassenname-1 oder einer untergeordneten Klasse von klassenname-1 ist, dann entsteht die Ausnahmesituation EC-OO-CONFORMANCE.
Falls FACTORY ohne ONLY-Angabe spezifiziert ist, dann ist implizit das Ergebnis USAGE OBJECT REFERENCE FACTORY OF klassenname-1. Falls das Objekt, auf welches bezeichner-1 verweist, nicht das Fabrikobjekt von klassenname-1 oder einer untergeordneten Klasse von klassenname-1 ist, dann entsteht die Ausnahmesituation EC-OO-CONFORMANCE.
Ist ONLY angegeben und FACTORY nicht, dann ist implizit das Ergebnis USAGE OBJECT REFERENCE klassenname-1 ONLY. Falls das Objekt, auf welches bezeichner-1 verweist, kein Objekt von klassename-1 ist, dann entsteht die Ausnahmesituation EC-OO-CONFORMANCE.
Ist sowohl die Angabe FACTORY als auch ONLY spezifiziert, ist implizit das Ergebnis USAGE OBJECT REFERENCE FACTORY OF klassenname-1 ONLY. Falls das Objekt, auf das bezeichner-1 verweist, nicht das Fabrik-Objekt von klassenname-1 ist, dann entsteht die Ausnahmesituation EC-OO-CONFORMANCE.
Ist interfacename-1 angegeben, dann ist implizit das Ergebnis USAGE OBJECT REFERENCE interfacename-1. Ist die Schnittstelle des Objekts, auf das bezeichner-1 verweist, nicht mit interfacename-1 konform, dann entsteht die Ausnahmesituation EC-OO-CONFORMANCE.
Ist UNIVERSAL angegeben, so ist implizit das Ergebnis USAGE OBJECTREFERENCE, ohne zusätzliche Angabe. Es tritt keine Ausnahmebedingung auf.
Ist die Ausnahmesituation EC-OO-CONFORMANCE entstanden und die Überprüfung für diese Ausnahmesituation eingeschaltet, so wird der zugehörige Ausnahmezustand ausgelöst und in die entsprechende USE-Prozedur verzweigt.