Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Viene introdotto un contesto annidato con il carattere di annidamento iniziale (ovvero una parentesi aperta o una parentesi quadra aperta). Il contesto annidato termina quando viene rilevato il carattere di annidamento finale corrispondente ,ovvero una parentesi chiusa o parentesi quadra chiusa.
I contesti di annidamento possono essere annidati l'uno nell'altro. I caratteri di annidamento finale possono essere usati solo per terminare il contesto di annidamento corrente. Se i caratteri di annidamento finali compaiono in qualsiasi altra posizione, si tratta di un errore di sintassi.
All'interno di un contesto annidato, i caratteri delimitatori di costrutti perdono il loro significato come delimitatori di costrutto e vengono considerati anche come delimitatori di contesto annidato. All'interno di un contesto annidato, una sequenza di interruzione di linea è considerata come uno spazio bianco non letterale.
Il contesto annidato può essere visualizzato all'esterno di qualsiasi contesto o all'interno di un altro contesto annidato, ma non all'interno di qualsiasi altro contesto. Qualsiasi contesto, incluso altri contesti annidati, può essere visualizzato all'interno di un contesto annidato, ad eccezione del contesto HexSubString.
Nell'esempio di codice seguente viene illustrato un contesto annidato GDL.
*good_nests: ( { } [ ( ) ] )
Gli esempi di codice seguenti illustrano i contesti annidati GDL che contengono errori.
*bad_nests: ( ] *% end nesting delimiter can only be used within its nesting context.
*bad_nests: ( ] )
*bad_nests: ] [ *% end nesting delimiter can only be used within its nesting context.
*bad_nests: ( [ ) ] *% end nesting delimiter can only be used within its nesting*% context. In this case the ')' char cannot be used within the context begun
*%by '[' .
*bad_nests: { [ ] } *% attempt to use construct delimiter to define a nesting context
*% outside of a nesting context.
L'intero contenuto di un contesto annidato viene considerato come parte del valore. Ad esempio, il codice GDL seguente rappresenta una voce con una parola chiave "*KeywordA". Il resto del frammento è il valore di *KeywordA, perché ciò che sembra essere voci separate per *KeywordB e *KeywordC sono contenute all'interno di un contesto annidato. Infatti, i numeri "12, 38, 709" si trovano in un contesto annidato definito da parentesi delimitatori annidati all'interno del contesto esterno definito dai delimitatori tra parentesi quadre.
*KeywordA: [
*KeywordB: List(12, 38, 709)
*KeywordC: "the small brown fox" ]