Compartilhar via


Constructos GDL

Um constructo GDL é simplesmente um atributo GDL seguido por um corpo de construção. Logicamente, um constructo representa uma coleção de dados, assim como uma estrutura C.

Um corpo de construção é zero, um ou mais entradas GDL entre caracteres delimitadores de construção. O corpo do constructo deve ser introduzido pela chave curly esquerda ({) e encerrado pela chave direita (}).

As entradas GDL que são delimitadas pelos caracteres delimitadores de construção são conhecidas como o conteúdo do constructo. As entradas GDL incluídas também são chamadas de filhos, entradas filho, elementos filho ou membros do constructo. Como as entradas filho também podem ser construções, você pode criar aninhamentos arbitrariamente profundos de constructos; no entanto, somente os descendentes imediatos do constructo pai são chamados de entradas filho.

Por outro lado, o constructo que coloca imediatamente as entradas filho às vezes é chamado de constructo pai. Duas entradas GDL que compartilham o mesmo constructo pai são chamadas de Irmãos. Um constructo cujo corpo contém o pai de uma entrada ou o pai de um pai de uma entrada (e assim por diante) é chamado de constructo ancestral.

O atributo que precede o corpo do constructo é chamado de cabeçalho de construção ou, às vezes, apenas o constructo. O componente palavra-chave do cabeçalho de construção é chamado de tipo de construção. Se vários constructos irmãos forem definidos, cada um com o mesmo palavra-chave, eles serão considerados pertencentes ao mesmo tipo de construção. O componente de valor do cabeçalho de construção é chamado de nome da instância de construção ou a marca de construção. Espera-se que a marca de construção seja um símbolo. A marca de construção é sintaticamente opcional, mas é necessária em alguns casos.

Os constructos podem ser sintáticos ou lógicos. Os constructos podem consistir em uniões.

Uma quantidade arbitrária de sequências de espaço em branco e quebra de linha pode preceder ou seguir os caracteres delimitadores de construção. No entanto, para fins de legibilidade, uma convenção de recuo no estilo C normalmente é usada.

O exemplo de código a seguir mostra um constructo GDL.

*ConstructType: ConstructTag
{   *%  Begin Construct Delimiter
*%  this is the Construct Body
*ChildAttribute: child attribute value
*ChildConstruct: ChildConstructTag
{
 *%  Body of Child construct could hold more constructs.
}
*AnotherChildConstruct: ChildConstructTag2
{
 *% Contents of *AnotherChildConstruct
 *% since both child constructs share the same Parent construct, they are
 *% Sibling Constructs.
 *DescendantAttribute:  this attribute is a descendant of  *ConstructType: ConstructTag
}
}   *%  End Construct Delimiter

Esta seção inclui:

Delimitadores de construção GDL

Constructos sintáticos e lógicos em GDL

Uniões de construção GDL

Caracteres de espaço em branco GDL

Comentários GDL

Cadeias de caracteres GDL