Basic concepts
Namensbereich
Namensbereich in der FlexiLayout-Sprache: wo Variablen, Konstanten und Elementhypothesen in Advanced-Abschnitten und im Elementbaum zugänglich sind.
Namen von Elementen, Konstanten und Variablen können nur in bestimmten Abschnitten eines Programms verwendet werden. Dies wird als „Gültigkeitsbereich“ des Namens bezeichnet. Der Gültigkeitsbereich einer Variablen bestimmt auch ihre Lebensdauer.
Der Name einer Variablen, die im Abschnitt Region-Ausdruck, Erweiterte Beziehungen vor der Suche oder Erweiterte Beziehungen nach der Suche deklariert wird, ist innerhalb dieses Abschnitts zugänglich, und zwar erst nach ihrer Deklaration.
Ein Name, der innerhalb eines Blocks deklariert wird, ist nur innerhalb dieses Blocks und der darin enthaltenen Blöcke zugänglich, und zwar erst nach seiner Deklaration:
{
Int a; a = 5;
}
Auf Elementhypothesen kann über die Namen der Elemente zugegriffen werden. In den Abschnitten Erweiterte Beziehungen vor der Suche und Erweiterte Beziehungen nach der Suche können Sie auf die Hypothesen aller Elemente zugreifen, die sich oberhalb des aktuellen Elements im FlexiLayout-Baum befinden. Im Abschnitt Erweiterte Beziehungen nach der Suche können Sie außerdem auf die für das aktuelle Element selbst formulierte Hypothese zugreifen. Im Abschnitt Region-Ausdruck einer Blockbeschreibung können Sie auf die Hypothesen aller Elemente zugreifen, die sich auf dem „besten Zweig“ des Hypothesenbaums befinden.
Der Code im Abschnitt Erweiterte Beziehungen vor der Suche wird für jede Hypothese separat ausgeführt, unabhängig von den Hypothesen, die sich auf anderen Zweigen des Hypothesenbaums befinden. Das bedeutet, dass das Programm bei der Ausführung des Codes eines bestimmten Abschnitts einer Elementbeschreibung nur auf eine Hypothese für jedes übergeordnete Element zugreifen kann, nämlich auf die Hypothese, die sich auf demselben Zweig befindet.
Auf Elementhypothesen und ihre Eigenschaften wird im schreibgeschützten Modus zugegriffen.
Hypothesen für ein übergeordnetes Element werden über den vollständigen Namen des Elements aufgerufen, zum Beispiel: SearchObjects.Group1.Group2.FirstItem. Beim Zugriff auf ein Unterelement einer Gruppe von einem anderen Unterelement aus müssen Sie den Namen der Gruppe nicht angeben. So können Sie zum Beispiel in den Advanced…-Abschnitten des Elements SearchObjects.Group1.Group2.SecondItem das Element SearchObjects.Group1.Group2.FirstItem auf eine der folgenden Arten aufrufen: SearchObjects.Group1.Group2.FirstItem, Group1.Group2.FirstItem, Group2.FirstItem, FirstItem.
Der Kurzname verweist immer auf das am tiefsten verschachtelte Element.
Angenommen, wir haben den folgenden Baum aus Elementen:
SearchElements
FirstItem
Group1
FirstItem
SecondItem
Wenn Sie sich in SearchElements.Group1.SecondItem befinden und den Namen FirstItem verwenden, rufen Sie das Element SearchElements.Group1.FirstItem auf und nicht das Element SearchElements.FirstItem.
