3.2 Kontekst użycia

 

Istotne znaczenie dla procesu wyliczenia wyrażenia ma również kontekst jego użycia. Wyrażenie użyte w definicji właściwości obiektu ma kontekstowy dostęp do definicji obiektu i diagramu, w którym zostało użyte. Typową informacją kontekstową jest nazwa zmiennej głównej obiektu.

Zestaw danych kontekstowych zależy od miejsca użycia wyrażenia, np. wyrażenia funkcji przeliczających mają jedynie dostęp do zmiennej, w definicji której zostały użyte.

Informacje kontekstowe są dziedziczone. Wyrażenie użyte we właściwości globalnej nie posiada własnego kontekstu. Jednak, użycie tej właściwości globalnej w definicji właściwości obiektu diagramu spowoduje, że wyrażenie otrzyma kontekst obiektu.

Variable()

Powyższe wyrażenie jest legalne we właściwości obiektu i oznacza pobranie wartości zmiennej głównej obiektu. Nie jest jednak legalne w treści akcji operatorskiej użytej w definicji skrótu klawiszowego.

 Variable(”#_hi”)

Powyższe wyrażenie też jest legalne, tylko w kontekście (bezpośrednim lub dziedziczonym) obiektu diagramu. Znak specjalny # oznacza nazwę zmiennej głównej, w efekcie funkcja pobiera wartość zmiennej o nazwie utworzonej przez dodanie sufiksu _hi do nazwy zmiennej głównej.