4.11 Group template declarations

...
ENTITY e IS
    ...
BEGIN
    ...
END e ;

...
ARCHITECTURE a OF e IS
    ...
BEGIN
    ...
END a ;

...
CONFIGURATION c
        OF e IS
    ...
    ...
    ...
END

...
PACKAGE pkg IS
    ...
    ...
    ...
END pkg ;


group_template_declaration ::=

group
identifier is
        (entity_class_entry_list) ;

...
PACKAGE BODY pck
        IS
    ...
    ...
    ...
END pck ;

...
b: BLOCK IS
    ...
BEGIN
    ...
END BLOCK b ;

FUNCTION f (...)
    RETURN r IS
    ...
BEGIN
    ...
END f ;

PROCEDURE p (...) IS
    ...
BEGIN
    ...
END p ;

p : PROCESS
    ...
BEGIN
    ...
END PROCESS p ;

4.11.1 Further definitions

entity_class_entry_list ::=
    entity_class_entry { , entity_class_entry }

entity_class_entry ::=
    entity_class [<>]

4.11.2 Examples

GROUP pin2pin IS ( SIGNAL , SIGNAL ) ;

Groups of this type consist of two signals.

GROUP pin_set IS ( SIGNAL <>) ;

Groups of this type consist of any number of signals.

GROUP file_groups IS ( FILE <>) ;

Groups of this type consist of any number of files.

GROUP gog IS ( GROUP <>) ;

Groups of this type consist of any number of groups.