Spec-Zone.ru › Ada 2005
Справочник по Ada 2005

Приложение P

(для справок)

Резюме синтаксиса

Это приложение содержит резюме полного синтаксиса языка. См. 1.1.4 для описания используемой нотации.
2.3:
идентификатор ::=
начало_идентификатора {начало_идентификатора | расширение_идентификатора}
2.3:
начало_идентификатора ::=
заглавная_буква
| строчная_буква
| буква_прописная
| модификатор_буквы
| другая_буква
| цифра_буква
2.3:
расширение_идентификатора ::=
знак_без_пробелов
| знак_со_соединением_пробелов
| десятичная_цифра
| знак_соединения
| другой_формат
2.4:
числовое_литерал ::= десятичное_литерал | литерал_определённой_системы_счисления
2.4.1:
десятичное_литерал ::= цифра [.цифра] [экспонента]
2.4.1:
цифра ::= цифра {[подчеркивание] цифра}
2.4.1:
экспонента ::= E [+] цифра | E – цифра
2.4.1:
цифра ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
2.4.2:
литерал_определённой_системы_счисления ::=
основание # цифра_определённой_системы_счисления [.цифра_определённой_системы_счисления] # [экспонента]
2.4.2:
основание ::= цифра
2.4.2:
цифра_определённой_системы_счисления ::=
расширенная_цифра {[подчеркивание] расширенная_цифра}
2.4.2:
расширенная_цифра ::= цифра | A | B | C | D | E | F
2.5:
литерал_символа ::= 'графический_символ'
2.6:
строковый_литерал ::= "{элемент_строки}"
2.6:
элемент_строки ::= "" | не_знак_цитаты_графический_символ
2.7:
комментарий ::= --{не_конец_строки_символ}
2.8:
псевдоним ::=
псевдоним идентификатор [(связывание_аргумента_псевдонима {, связывание_аргумента_псевдонима})];
2.8:
связывание_аргумента_псевдонима ::=
[аргумент_псевдонима_идентификатор =>] имя
| [аргумент_псевдонима_идентификатор =>] выражение
3.1:
основное_объявление ::=
объявление_типа | объявление_подтипа
| объявление_объекта | объявление_числа
| объявление_подпрограммы | объявление_абстрактной_подпрограммы
| объявление_пустой_процедуры | объявление_пакета
| объявление_переименования | объявление_исключения
| объявление_генерика | инстанцирование_генерика
3.1:
определяющий_идентификатор ::= идентификатор
3.2.1:
объявление_типа ::= полное_объявление_типа
| неполное_объявление_типа
| объявление_типа_с_частным_доступом
| расширение_объявления_типа_с_частным_доступом
3.2.1:
полное_объявление_типа ::=
тип определяющий_идентификатор [часть_дискриминанта] есть определение_типа;
| объявление_типа_задачи
| объявление_типа_защищённого_объекта
3.2.1:
определение_типа ::=
определение_типа_перечисления | определение_целочисленного_типа
| определение_вещественного_типа | определение_типа_массива
| определение_типа_записи | определение_типа_с_доступом_через_ссылку
| определение_производного_типа | определение_типа_интерфейса
3.2.2:
объявление_подтипа ::=
подтип определяющий_идентификатор есть описание_подтипа;
3.2.2:
описание_подтипа ::= [исключение_пустоты] метка_подтипа [ограничение]
3.2.2:
метка_подтипа ::= подтип_имя
3.2.2:
ограничение ::= ограничение_скалярного_типа | ограничение_составного_типа
3.2.2:
ограничение_скалярного_типа ::=
ограничение_диапазона | ограничение_разрядов | ограничение_дельта
3.2.2:
ограничение_составного_типа ::=
ограничение_индекса | ограничение_дискриминанта
END_OF_DOCUMENT_MARKER
3.3.1:
object_declaration ::=
defining_identifier_list : [aliased] [constant] subtype_indication [:= expression];
| defining_identifier_list : [aliased] [constant] access_definition [:= expression];
| defining_identifier_list : [aliased] [constant] array_type_definition [:= expression];
| single_task_declaration
| single_protected_declaration
3.3.1:
defining_identifier_list ::=
defining_identifier {, defining_identifier}
3.3.2:
number_declaration ::=
defining_identifier_list : constant := static_expression;
3.4:
derived_type_definition ::=
[abstract] [limited] new parent_subtype_indication [[and interface_list] record_extension_part]
3.5:
range_constraint ::= range range
3.5:
range ::= range_attribute_reference
| simple_expression .. simple_expression
3.5.1:
enumeration_type_definition ::=
(enumeration_literal_specification {, enumeration_literal_specification})
3.5.1:
enumeration_literal_specification ::= defining_identifier | defining_character_literal
3.5.1:
defining_character_literal ::= character_literal
3.5.4:
integer_type_definition ::= signed_integer_type_definition | modular_type_definition
3.5.4:
signed_integer_type_definition ::= range static_simple_expression .. static_simple_expression
3.5.4:
modular_type_definition ::= mod static_expression
3.5.6:
real_type_definition ::=
floating_point_definition | fixed_point_definition
3.5.7:
floating_point_definition ::=
digits static_expression [real_range_specification]
3.5.7:
real_range_specification ::=
range static_simple_expression .. static_simple_expression
3.5.9:
fixed_point_definition ::= ordinary_fixed_point_definition | decimal_fixed_point_definition
3.5.9:
ordinary_fixed_point_definition ::=
delta static_expression real_range_specification
3.5.9:
decimal_fixed_point_definition ::=
delta static_expression digits static_expression [real_range_specification]
3.5.9:
digits_constraint ::=
digits static_expression [range_constraint]
3.6:
array_type_definition ::=
unconstrained_array_definition | constrained_array_definition
3.6:
unconstrained_array_definition ::=
array(index_subtype_definition {, index_subtype_definition}) of component_definition
3.6:
index_subtype_definition ::= subtype_mark range <>
3.6:
constrained_array_definition ::=
array (discrete_subtype_definition {, discrete_subtype_definition}) of component_definition
3.6:
discrete_subtype_definition ::= discrete_subtype_indication | range
3.6:
component_definition ::=
[aliased] subtype_indication
| [aliased] access_definition
3.6.1:
index_constraint ::= (discrete_range {, discrete_range})
3.6.1:
discrete_range ::= discrete_subtype_indication | range
3.7:
discriminant_part ::= unknown_discriminant_part | known_discriminant_part
3.7:
unknown_discriminant_part ::= (<>)
3.7:
known_discriminant_part ::=
(discriminant_specification {; discriminant_specification})
END_OF_DOCUMENT_MARKER
3.7:
discriminant_specification ::=
defining_identifier_list : [null_exclusion] subtype_mark [:= default_expression]
| defining_identifier_list : access_definition [:= default_expression]
3.7:
default_expression ::= expression
3.7.1:
discriminant_constraint ::=
(discriminant_association {, discriminant_association})
3.7.1:
discriminant_association ::=
[дискриминантный_selector_name {| дискриминантный_selector_name} =>] expression
3.8:
record_type_definition ::= [[abstract] tagged] [limited] record_definition
3.8:
record_definition ::=
record
component_list
end record
| null record
3.8:
component_list ::=
component_item {component_item}
| {component_item} variant_part
| null;
3.8:
component_item ::= component_declaration | aspect_clause
3.8:
component_declaration ::=
defining_identifier_list : component_definition [:= default_expression];
3.8.1:
variant_part ::=
case дискриминантный_direct_name is
variant
{variant}
end case;
3.8.1:
variant ::=
when discrete_choice_list =>
component_list
3.8.1:
discrete_choice_list ::= discrete_choice {| discrete_choice}
3.8.1:
discrete_choice ::= expression | discrete_range | others
3.9.1:
record_extension_part ::= with record_definition
3.9.3:
abstract_subprogram_declaration ::=
[overriding_indicator]
subprogram_specification is abstract;
3.9.4:
interface_type_definition ::=
[limited | task | protected | synchronized] interface [and interface_list]
3.9.4:
interface_list ::= интерфейс_subtype_mark {and интерфейс_subtype_mark}
3.10:
access_type_definition ::=
[null_exclusion] access_to_object_definition
| [null_exclusion] access_to_subprogram_definition
3.10:
access_to_object_definition ::=
access [general_access_modifier] subtype_indication
3.10:
general_access_modifier ::= all | constant
3.10:
access_to_subprogram_definition ::=
access [protected] procedure parameter_profile
| access [protected] function parameter_and_result_profile
3.10:
null_exclusion ::= not null
3.10:
access_definition ::=
[null_exclusion] access [constant] subtype_mark
| [null_exclusion] access [protected] procedure parameter_profile
| [null_exclusion] access [protected] function parameter_and_result_profile
3.10.1:
incomplete_type_declaration ::= type defining_identifier [discriminant_part] [is tagged];
3.11:
declarative_part ::= {declarative_item}
3.11:
declarative_item ::=
basic_declarative_item | body
3.11:
basic_declarative_item ::=
basic_declaration | aspect_clause | use_clause
3.11:
body ::= proper_body | body_stub
3.11:
proper_body ::=
subprogram_body | package_body | task_body | protected_body
4.1:
name ::=
direct_name | explicit_dereference
| indexed_component | slice
| selected_component | attribute_reference
| type_conversion | function_call
| character_literal
END_OF_DOCUMENT_MARKER
4.1:
direct_name ::= идентификатор | символ_оператора
4.1:
prefix ::= имя | неявная_дериференция
4.1:
explicit_dereference ::= имя.all
4.1:
implicit_dereference ::= имя
4.1.1:
indexed_component ::= prefix(выражение {, выражение})
4.1.2:
slice ::= prefix(дискретный_диапазон)
4.1.3:
selected_component ::= prefix . имя_селектора
4.1.3:
selector_name ::= идентификатор | литерал_символа | символ_оператора
4.1.4:
attribute_reference ::= prefix'идентификатор_атрибута
4.1.4:
attribute_designator ::=
идентификатор[(static_выражение)]
| Access | Delta | Digits
4.1.4:
range_attribute_reference ::= prefix'идентификатор_атрибута_диапазона
4.1.4:
range_attribute_designator ::= Range[(static_выражение)]
4.3:
aggregate ::= запись_агрегат | расширение_агрегат | массив_агрегат
4.3.1:
record_aggregate ::= (список_ассоциаций_компонентов_записи)
4.3.1:
record_component_association_list ::=
ассоциация_компонента_записи {, ассоциация_компонента_записи}
| null record
4.3.1:
record_component_association ::=
[список_выбора_компонентов =>] выражение
| список_выбора_компонентов => <>
4.3.1:
component_choice_list ::=
component_имя_селектора {| component_имя_селектора}
| others
4.3.2:
extension_aggregate ::=
(часть_предка with список_ассоциаций_компонентов_записи)
4.3.2:
ancestor_part ::= выражение | метка_типа_подтипа
4.3.3:
array_aggregate ::=
позиционный_агрегат_массива | именованный_агрегат_массива
4.3.3:
positional_array_aggregate ::=
(выражение, выражение {, выражение})
| (выражение {, выражение}, others => выражение)
| (выражение {, выражение}, others => <>)
4.3.3:
named_array_aggregate ::=
(ассоциация_компонента_массива {, ассоциация_компонента_массива})
4.3.3:
array_component_association ::=
список_дискретного_выбора => выражение
| список_дискретного_выбора => <>
4.4:
expression ::=
отношение {and отношение} | отношение {and then отношение}
| отношение {or отношение} | отношение {or else отношение}
| отношение {xor отношение}
4.4:
relation ::=
простое_выражение [оператор_отношения простое_выражение]
| простое_выражение [not] in диапазон
| простое_выражение [not] in метка_типа_подтипа
4.4:
simple_expression ::= [унарный_оператор_сложения] член {бинарный_оператор_сложения член}
4.4:
term ::= множитель {оператор_умножения множитель}
4.4:
factor ::= основа [** основа] | abs основа | not основа
END_OF_DOCUMENT_MARKER
4.4:
primary ::=
numeric_literal | null | string_literal | aggregate
| name | qualified_expression | allocator | (expression)
4.5:
logical_operator ::= and | or | xor
4.5:
relational_operator ::= = | /= | < | <= | > | >=
4.5:
binary_adding_operator ::= + | – | &
4.5:
unary_adding_operator ::= + | –
4.5:
multiplying_operator ::= * | / | mod | rem
4.5:
highest_precedence_operator ::= ** | abs | not
4.6:
type_conversion ::=
subtype_mark(expression)
| subtype_mark(name)
4.7:
qualified_expression ::=
subtype_mark'(expression) | subtype_mark'aggregate
4.8:
allocator ::=
new subtype_indication | new qualified_expression
5.1:
sequence_of_statements ::= statement {statement}
5.1:
statement ::=
{label} simple_statement | {label} compound_statement
5.1:
simple_statement ::= null_statement
| assignment_statement | exit_statement
| goto_statement | procedure_call_statement
| simple_return_statement | entry_call_statement
| requeue_statement | delay_statement
| abort_statement | raise_statement
| code_statement
5.1:
compound_statement ::=
if_statement | case_statement
| loop_statement | block_statement
| extended_return_statement
| accept_statement | select_statement
5.1:
null_statement ::= null;
5.1:
label ::= <<метка_statement_identifier>>
5.1:
statement_identifier ::= direct_name
5.2:
assignment_statement ::=
переменная_name := expression;
5.3:
if_statement ::=
if condition then
sequence_of_statements
{elsif condition then
sequence_of_statements}
[else
sequence_of_statements]
end if;
5.3:
condition ::= булево_expression
5.4:
case_statement ::=
case expression is
case_statement_alternative
{case_statement_alternative}
end case;
5.4:
case_statement_alternative ::=
when discrete_choice_list =>
sequence_of_statements
5.5:
loop_statement ::=
[цикл_statement_identifier:]
[iteration_scheme] loop
sequence_of_statements
end loop [цикл_identifier];
5.5:
iteration_scheme ::= while condition
| for loop_parameter_specification
5.5:
loop_parameter_specification ::=
defining_identifier in [reverse] discrete_subtype_definition
5.6:
block_statement ::=
[блок_statement_identifier:]
[declare
declarative_part]
begin
handled_sequence_of_statements
end [блок_identifier];
5.7:
exit_statement ::=
exit [цикл_name] [when condition];
5.8:
goto_statement ::= goto метка_name;
6.1:
subprogram_declaration ::=
[overriding_indicator]
subprogram_specification;
6.1:
subprogram_specification ::=
procedure_specification
| function_specification
6.1:
procedure_specification ::= procedure defining_program_unit_name parameter_profile
END_OF_DOCUMENT_MARKER
6.1:
function_specification ::= function defining_designator parameter_and_result_profile
6.1:
designator ::= [parent_unit_name . ]identifier | operator_symbol
6.1:
defining_designator ::= defining_program_unit_name | defining_operator_symbol
6.1:
defining_program_unit_name ::= [parent_unit_name . ]defining_identifier
6.1:
operator_symbol ::= string_literal
6.1:
defining_operator_symbol ::= operator_symbol
6.1:
parameter_profile ::= [formal_part]
6.1:
parameter_and_result_profile ::=
[formal_part] return [null_exclusion] subtype_mark
| [formal_part] return access_definition
6.1:
formal_part ::=
(parameter_specification {; parameter_specification})
6.1:
parameter_specification ::=
defining_identifier_list : mode [null_exclusion] subtype_mark [:= default_expression]
| defining_identifier_list : access_definition [:= default_expression]
6.1:
mode ::= [in] | in out | out
6.3:
subprogram_body ::=
[overriding_indicator]
subprogram_specification is
declarative_part
begin
handled_sequence_of_statements
end [designator];
6.4:
procedure_call_statement ::=
procedure_name;
| procedure_prefix actual_parameter_part;
6.4:
function_call ::=
function_name
| function_prefix actual_parameter_part
6.4:
actual_parameter_part ::=
(parameter_association {, parameter_association})
6.4:
parameter_association ::=
[formal_parameter_selector_name =>] explicit_actual_parameter
6.4:
explicit_actual_parameter ::= expression | variable_name
6.5:
simple_return_statement ::= return [expression];
6.5:
extended_return_statement ::=
return defining_identifier : [aliased] return_subtype_indication [:= expression] [do
handled_sequence_of_statements
end return];
6.5:
return_subtype_indication ::= subtype_indication | access_definition
6.7:
null_procedure_declaration ::=
[overriding_indicator]
procedure_specification is null;
7.1:
package_declaration ::= package_specification;
7.1:
package_specification ::=
package defining_program_unit_name is
{basic_declarative_item}
[private
{basic_declarative_item}]
end [[parent_unit_name.]identifier]
7.2:
package_body ::=
package body defining_program_unit_name is
declarative_part
[begin
handled_sequence_of_statements]
end [[parent_unit_name.]identifier];
7.3:
private_type_declaration ::=
type defining_identifier [discriminant_part] is [[abstract] tagged] [limited] private;
7.3:
private_extension_declaration ::=
type defining_identifier [discriminant_part] is
[abstract] [limited | synchronized] new ancestor_subtype_indication
[and interface_list] with private;
8.3.1:
overriding_indicator ::= [not] overriding
8.4:
use_clause ::= use_package_clause | use_type_clause
8.4:
use_package_clause ::= use package_name {, package_name};
8.4:
use_type_clause ::= use type subtype_mark {, subtype_mark};
END_OF_DOCUMENT_MARKER
8.5:
renaming_declaration ::=
object_renaming_declaration
| exception_renaming_declaration
| package_renaming_declaration
| subprogram_renaming_declaration
| generic_renaming_declaration
8.5.1:
object_renaming_declaration ::=
defining_identifier : [null_exclusion] subtype_mark переименовывает object_name;
| defining_identifier : access_definition переименовывает object_name;
8.5.2:
exception_renaming_declaration ::= defining_identifier : исключение переименовывает exception_name;
8.5.3:
package_renaming_declaration ::= пакет defining_program_unit_name переименовывает package_name;
8.5.4:
subprogram_renaming_declaration ::=
[overriding_indicator]
subprogram_specification переименовывает callable_entity_name;
8.5.5:
generic_renaming_declaration ::=
общий пакет defining_program_unit_name переименовывает generic_package_name;
| общая процедура defining_program_unit_name переименовывает generic_procedure_name;
| общая функция defining_program_unit_name переименовывает generic_function_name;
9.1:
task_type_declaration ::=
задача тип defining_identifier [known_discriminant_part] [является
[новый interface_list с]
task_definition];
9.1:
single_task_declaration ::=
задача defining_identifier [является
[новый interface_list с]
task_definition];
9.1:
task_definition ::=
{task_item}
[ приватный
{task_item}]
конец [task_identifier]
9.1:
task_item ::= entry_declaration | aspect_clause
9.1:
task_body ::=
задача тело defining_identifier является
declarative_part
начало
handled_sequence_of_statements
конец [task_identifier];
9.4:
protected_type_declaration ::=
защищенный тип defining_identifier [known_discriminant_part] является
[новый interface_list с]
protected_definition;
9.4:
single_protected_declaration ::=
защищенный defining_identifier является
[новый interface_list с]
protected_definition;
9.4:
protected_definition ::=
{ protected_operation_declaration }
[ приватный
{ protected_element_declaration } ]
конец [protected_identifier]
9.4:
protected_operation_declaration ::= subprogram_declaration
| entry_declaration
| aspect_clause
9.4:
protected_element_declaration ::= protected_operation_declaration
| component_declaration
9.4:
protected_body ::=
защищенный тело defining_identifier является
{ protected_operation_item }
конец [protected_identifier];
9.4:
protected_operation_item ::= subprogram_declaration
| subprogram_body
| entry_body
| aspect_clause
9.5.2:
entry_declaration ::=
[overriding_indicator]
вход defining_identifier [(discrete_subtype_definition)] parameter_profile;
9.5.2:
accept_statement ::=
принять entry_direct_name [(entry_index)] parameter_profile [сделав
handled_sequence_of_statements
конец [entry_identifier]];
9.5.2:
entry_index ::= expression
9.5.2:
entry_body ::=
вход defining_identifier entry_body_formal_part entry_barrier является
declarative_part
начало
handled_sequence_of_statements
конец [entry_identifier];
9.5.2:
entry_body_formal_part ::= [(entry_index_specification)] parameter_profile
END_OF_DOCUMENT_MARKER
9.5.2:
entry_barrier ::= когда condition
9.5.2:
entry_index_specification ::= для defining_identifier в discrete_subtype_definition
9.5.3:
entry_call_statement ::= entry_name [actual_parameter_part];
9.5.4:
requeue_statement ::= requeue entry_name [с прерыванием];
9.6:
delay_statement ::= delay_until_statement | delay_relative_statement
9.6:
delay_until_statement ::= задержка до delay_expression;
9.6:
delay_relative_statement ::= задержка delay_expression;
9.7:
select_statement ::=
selective_accept
| timed_entry_call
| conditional_entry_call
| asynchronous_select
9.7.1:
selective_accept ::=
выбор
[guard]
select_alternative
{ или
[guard]
select_alternative }
[ иначе
sequence_of_statements ]
конец выбора;
9.7.1:
guard ::= когда condition =>
9.7.1:
select_alternative ::=
accept_alternative
| delay_alternative
| terminate_alternative
9.7.1:
accept_alternative ::=
accept_statement [sequence_of_statements]
9.7.1:
delay_alternative ::=
delay_statement [sequence_of_statements]
9.7.1:
terminate_alternative ::= прервать;
9.7.2:
timed_entry_call ::=
выбор
entry_call_alternative
или
delay_alternative
конец выбора;
9.7.2:
entry_call_alternative ::=
procedure_or_entry_call [sequence_of_statements]
9.7.2:
procedure_or_entry_call ::=
procedure_call_statement | entry_call_statement
9.7.3:
conditional_entry_call ::=
выбор
entry_call_alternative
иначе
sequence_of_statements
конец выбора;
9.7.4:
asynchronous_select ::=
выбор
triggering_alternative
затем прервать
abortable_part
конец выбора;
9.7.4:
triggering_alternative ::= triggering_statement [sequence_of_statements]
9.7.4:
triggering_statement ::= procedure_or_entry_call | delay_statement
9.7.4:
abortable_part ::= sequence_of_statements
9.8:
abort_statement ::= прервать task_name {, task_name};
10.1.1:
compilation ::= {compilation_unit}
10.1.1:
compilation_unit ::=
context_clause library_item
| context_clause subunit
10.1.1:
library_item ::= [приватный] library_unit_declaration
| library_unit_body
| [приватный] library_unit_renaming_declaration
10.1.1:
library_unit_declaration ::=
subprogram_declaration | package_declaration
| generic_declaration | generic_instantiation
10.1.1:
library_unit_renaming_declaration ::=
package_renaming_declaration
| generic_renaming_declaration
| subprogram_renaming_declaration
10.1.1:
library_unit_body ::= subprogram_body | package_body
10.1.1:
parent_unit_name ::= name
10.1.2:
context_clause ::= {context_item}
10.1.2:
context_item ::= with_clause | use_clause
10.1.2:
with_clause ::= limited_with_clause | nonlimited_with_clause
10.1.2:
limited_with_clause ::= ограниченный [приватный] с library_unit_name {, library_unit_name};
END_OF_DOCUMENT_MARKER
10.1.2:
nonlimited_with_clause ::= [private] with library_unit_имя {, library_unit_имя};
10.1.3:
body_stub ::= заглушка_тела_подпрограммы | заглушка_тела_пакета | заглушка_тела_задачи | заглушка_тела_защищенного_блока
10.1.3:
subprogram_body_stub ::=
[индикатор_переопределения]
описание_подпрограммы is separate;
10.1.3:
package_body_stub ::= package body идентификатор_определения is separate;
10.1.3:
task_body_stub ::= task body идентификатор_определения is separate;
10.1.3:
protected_body_stub ::= protected body идентификатор_определения is separate;
10.1.3:
subunit ::= separate (имя_родительского_блока) полный_тело
11.1:
exception_declaration ::= список_идентификаторов_определения : исключение;
11.2:
handled_sequence_of_statements ::=
последовательность_операторов
[исключение
обработчик_исключения
{обработчик_исключения}]
11.2:
exception_handler ::=
when [описание_параметра_выбора:] выбор_исключения {| выбор_исключения} =>
последовательность_операторов
11.2:
choice_parameter_specification ::= идентификатор_определения
11.2:
exception_choice ::= исключение_имя | others
11.3:
raise_statement ::= raise;
| raise исключение_имя [with строковое_выражение];
12.1:
generic_declaration ::= объявление_генерической_подпрограммы | объявление_генерического_пакета
12.1:
generic_subprogram_declaration ::=
формальная_часть_генерика описание_подпрограммы;
12.1:
generic_package_declaration ::=
формальная_часть_генерика описание_пакета;
12.1:
generic_formal_part ::= generic {объявление_формального_параметра_генерика | оператор_использования}
12.1:
generic_formal_parameter_declaration ::=
объявление_формального_объекта
| объявление_формального_типа
| объявление_формальной_подпрограммы
| объявление_формального_пакета
12.3:
generic_instantiation ::=
package имя_блока_программы is
new генерический_пакет_имя [формальная_часть_генерика];
| [индикатор_переопределения]
procedure имя_блока_программы is
new генерическая_процедура_имя [формальная_часть_генерика];
| [индикатор_переопределения]
function имя_функции is
new генерическая_функция_имя [формальная_часть_генерика];
12.3:
generic_actual_part ::=
(ассоциация_генерика {, ассоциация_генерика})
12.3:
generic_association ::=
[формальный_параметр_генерика_имя_селектора =>] явный_параметр_генерика
12.3:
explicit_generic_actual_parameter ::= выражение | переменная_имя
| подпрограмма_имя | вход_имя | метка_типа
| экземпляр_пакета_имя
12.4:
formal_object_declaration ::=
список_идентификаторов_определения : режим [исключение_нулевого_значения] метка_типа [:= выражение_по_умолчанию];
список_идентификаторов_определения : режим определение_доступа [:= выражение_по_умолчанию];
12.5:
formal_type_declaration ::=
type идентификатор_определения[часть_дискриминантов] is определение_формального_типа;
END_OF_DOCUMENT_MARKER
12.5:
formal_type_definition ::=
formal_private_type_definition
| formal_derived_type_definition
| formal_discrete_type_definition
| formal_signed_integer_type_definition
| formal_modular_type_definition
| formal_floating_point_definition
| formal_ordinary_fixed_point_definition
| formal_decimal_fixed_point_definition
| formal_array_type_definition
| formal_access_type_definition
| formal_interface_type_definition
12.5.1:
formal_private_type_definition ::= [[абстрактный] меченый] [ограниченный] частный
12.5.1:
formal_derived_type_definition ::=
[абстрактный] [ограниченный | синхронизированный] новый subtype_mark [[и interface_list]с частным]
12.5.2:
formal_discrete_type_definition ::= (<>)
12.5.2:
formal_signed_integer_type_definition ::= диапазон <>
12.5.2:
formal_modular_type_definition ::= мод <>
12.5.2:
formal_floating_point_definition ::= цифры <>
12.5.2:
formal_ordinary_fixed_point_definition ::= дельта <>
12.5.2:
formal_decimal_fixed_point_definition ::= дельта <> цифры <>
12.5.3:
formal_array_type_definition ::= array_type_definition
12.5.4:
formal_access_type_definition ::= access_type_definition
12.5.5:
formal_interface_type_definition ::= interface_type_definition
12.6:
formal_subprogram_declaration ::= formal_concrete_subprogram_declaration
| formal_abstract_subprogram_declaration
12.6:
formal_concrete_subprogram_declaration ::=
с subprogram_specification [есть subprogram_default];
12.6:
formal_abstract_subprogram_declaration ::=
с subprogram_specification абстрактный [subprogram_default];
12.6:
subprogram_default ::= default_name | <> | null
12.6:
default_name ::= name
12.7:
formal_package_declaration ::=
с пакет defining_identifier есть новый generic_package_name formal_package_actual_part;
12.7:
formal_package_actual_part ::=
([другие =>] <>)
| [generic_actual_part]
| (formal_package_association {, formal_package_association} [, другие => <>])
12.7:
formal_package_association ::=
generic_association
| generic_formal_parameter_selector_name => <>
13.1:
aspect_clause ::= attribute_definition_clause
| enumeration_representation_clause
| record_representation_clause
| at_clause
13.1:
local_name ::= direct_name
| direct_name'attribute_designator
| library_unit_name
13.3:
attribute_definition_clause ::=
для local_name'attribute_designator использовать выражение;
| для local_name'attribute_designator использовать имя;
13.4:
enumeration_representation_clause ::=
для first_subtype_local_name использовать enumeration_aggregate;
13.4:
enumeration_aggregate ::= array_aggregate
13.5.1:
record_representation_clause ::=
для first_subtype_local_name использовать
запись [mod_clause]
{component_clause}
конец записи;
13.5.1:
component_clause ::=
component_local_name в position диапазон first_bit .. last_bit;
13.5.1:
position ::= static_expression
13.5.1:
first_bit ::= static_simple_expression
13.5.1:
last_bit ::= static_simple_expression
13.8:
code_statement ::= qualified_expression;
13.12:
restriction ::= restriction_identifier
| restriction_parameter_identifier => restriction_parameter_argument
13.12:
restriction_parameter_argument ::= name | expression
END_OF_DOCUMENT_MARKER
J.3:
delta_constraint ::= delta static_expression [range_constraint]
J.7:
at_clause ::= for direct_name use at expression;
J.8:
mod_clause ::= at mod static_expression;




Справочник по синтаксису
В следующем справочнике по синтаксису каждая синтаксическая категория сопровождается номером раздела, где она определена. Кроме того, каждая синтаксическая категория S сопровождается списком категорий, которые используют S в своих определениях. Например, первая запись ниже показывает, что abort_statement появляется в определении simple_statement.
abort_statement 9.8
simple_statement 5.1
abortable_part 9.7.4
asynchronous_select 9.7.4
abstract_subprogram_declaration 3.9.3
basic_declaration 3.1
accept_alternative 9.7.1
select_alternative 9.7.1
accept_statement 9.5.2
accept_alternative 9.7.1
compound_statement 5.1
access_definition 3.10
component_definition 3.6
discriminant_specification 3.7
formal_object_declaration 12.4
object_declaration 3.3.1
object_renaming_declaration 8.5.1
parameter_and_result_profile 6.1
parameter_specification 6.1
return_subtype_indication 6.5
access_to_object_definition 3.10
access_type_definition 3.10
END_OF_DOCUMENT_MARKER
определение_доступа_к_подпрограмме 3.10
определение_типа_доступа 3.10
определение_типа_доступа 3.10
формальное_определение_типа_доступа 12.5.4
определение_типа 3.2.1
часть_фактического_параметра 6.4
оператор_вызова_входной_точки 9.5.3
вызов_функции 6.4
оператор_вызова_процедуры 6.4
агрегат 4.3
первичный_элемент 4.4
квалифицированное_выражение 4.7
аллокатор 4.8
первичный_элемент 4.4
часть_предка 4.3.2
расширенный_агрегат 4.3.2
агрегат_массива 4.3.3
агрегат 4.3
агрегат_перечисления 13.4
ассоциация_компонента_массива 4.3.3
именной_агрегат_массива 4.3.3
определение_типа_массива 3.6
формальное_определение_типа_массива 12.5.3
объявление_объекта 3.3.1
определение_типа 3.2.1
оператор_класса 13.1
базовый_декларативный_элемент 3.11
элемент_компонента 3.8
объявление_операции_защищенного_объекта 9.4
элемент_операции_защищенного_объекта 9.4
элемент_задачи 9.1
оператор_присваивания 5.2
простой_оператор 5.1
асинхронный_выбор 9.7.4
оператор_выбора 9.7
оператор_в_момент J.7
оператор_класса 13.1
оператор_определения_атрибута 13.3
оператор_класса 13.1
обозначения_атрибута 4.1.4
определение_атрибута 13.3
ссылка_на_атрибут 4.1.4
локальное_имя 13.1
ссылка_на_атрибут 4.1.4
имя 4.1
база 2.4.2
литерал_базы 2.4.2
литерал_базы 2.4.2
числовая_литераль 2.4
числитель_базы 2.4.2
литерал_базы 2.4.2
базовое_объявление 3.1
базовый_декларативный_элемент 3.11
базовый_декларативный_элемент 3.11
декларативный_элемент 3.11
спецификация_пакета 7.1
бинарный_оператор_сложения 4.5
простое_выражение 4.4
блок_оператор 5.6
составной_оператор 5.1
тело 3.11
декларативный_элемент 3.11
заглушка_тела 10.1.3
тело 3.11
оператор_case 5.4
составной_оператор 5.1
вариант_оператора_case 5.4
оператор_case 5.4
символ 2.1
комментарий 2.7
литерал_символа 2.5
определение_литерала_символа 3.5.1
имя 4.1
имя_селектора 4.1.3
спецификация_параметра_выбора 11.2
обработчик_исключений 11.2
оператор_кода 13.8
простой_оператор 5.1
единица_компиляции 10.1.1
компиляция 10.1.1
список_выбора_компонента 4.3.1
связывание_компонента_записи 4.3.1
оператор_компонента 13.5.1
оператор_представления_записи 13.5.1
объявление_компонента 3.8
элемент_компонента 3.8
объявление_элемента_защиты 9.4
определение_компонента 3.6
объявление_компонента 3.8
определение_массива_с_ограничениями 3.6
определение_массива_без_ограничений 3.6
элемент_компонента 3.8
список_компонентов 3.8
список_компонентов 3.8
определение_записи 3.8
вариант 3.8.1
составное_ограничение 3.2.2
ограничение 3.2.2
составной_оператор 5.1
оператор 5.1
условие 5.3
барьер_входа 9.5.2
оператор_выхода 5.7
защита 9.7.1
оператор_if 5.3
схема_итерации 5.5
условный_вызов_входа 9.7.3
оператор_select 9.7
определение_массива_с_ограничениями 3.6
определение_типа_массива 3.6
ограничение 3.2.2
указание_подтипа 3.2.2
END_OF_DOCUMENT_MARKER
оператор_контекста 10.1.2
единица_компиляции 10.1.1
элемент_контекста 10.1.2
оператор_контекста 10.1.2
определение_десятичного_фиксированной_точки 3.5.9
определение_фиксированной_точки 3.5.9
десятичная_литеральная_константа 2.4.1
числовая_литеральная_константа 2.4
элемент_объявления 3.11
часть_объявлений 3.11
часть_объявлений 3.11
блок_операции 5.6
тело_входной_точки 9.5.2
тело_пакета 7.2
тело_подпрограммы 6.3
тело_задачи 9.1
выражение_по_умолчанию 3.7
объявление_компонента 3.8
спецификация_дискриминанта 3.7
объявление_формального_объекта 12.4
спецификация_параметра 6.1
имя_по_умолчанию 12.6
подпрограмма_по_умолчанию 12.6
определяющая_литеральная_константа_символа 3.5.1
спецификация_литеральной_константы_перечисления 3.5.1
определяющий_дескриптор 6.1
спецификация_функции 6.1
генерация_инстанции 12.3
определяющий_идентификатор 3.1
спецификация_параметра_выбора 11.2
список_определяющих_идентификаторов 3.3.1
определяющее_имя_программного_блока 6.1
тело_входной_точки 9.5.2
объявление_входной_точки 9.5.2
спецификация_индекса_входной_точки 9.5.2
спецификация_литеральной_константы_перечисления 3.5.1
переименование_исключения_объявление 8.5.2
расширенное_возвращающее_выражение 6.5
объявление_формального_пакета 12.7
объявление_формального_типа 12.5
полное_объявление_типа 3.2.1
неполное_объявление_типа 3.10.1
спецификация_параметра_цикла 5.5
объявление_переименования_объекта 8.5.1
заглушка_тела_пакета 10.1.3
объявление_расширения_приватной_части 7.3
объявление_приватного_типа 7.3
тело_защищённого_блока 9.4
заглушка_тела_защищённого_блока 10.1.3
объявление_защищённого_типа 9.4
отдельное_объявление_защищённого_блока 9.4
отдельное_объявление_задачи 9.1
объявление_подтипа 3.2.2
тело_задачи 9.1
заглушка_тела_задачи 10.1.3
объявление_типа_задачи 9.1
список_определяющих_идентификаторов 3.3.1
объявление_компонента 3.8
спецификация_дискриминанта 3.7
объявление_исключения 11.1
объявление_формального_объекта 12.4
объявление_числа 3.3.2
объявление_объекта 3.3.1
спецификация_параметра 6.1
определяющий_символ_оператора 6.1
определяющий_дескриптор 6.1
определяющее_имя_программного_блока 6.1
определяющий_дескриптор 6.1
генерация_инстанции 12.3
генеративное_переименование_объявление 8.5.5
тело_пакета 7.2
переименование_пакета_объявление 8.5.3
спецификация_пакета 7.1
спецификация_процедуры 6.1
альтернатива_задержки 9.7.1
альтернатива_выбора 9.7.1
вызов_входной_точки_с_временем 9.7.2
END_OF_DOCUMENT_MARKER
задержка_относительная_оператор 9.6
задержка_оператор 9.6
задержка_оператор 9.6
задержка_альтернатива 9.7.1
простой_оператор 5.1
запуск_оператор 9.7.4
задержка_до_оператора 9.6
задержка_оператор 9.6
ограничение_delta J.3
скалярное_ограничение 3.2.2
определение_типа_вывода 3.4
определение_типа 3.2.1
указатель 6.1
тело_подпрограммы 6.3
цифра 2.4.1
расширенная_цифра 2.4.2
число 2.4.1
ограничение_цифр 3.5.9
скалярное_ограничение 3.2.2
прямое_имя 4.1
оператор_приема 9.5.2
оператор_at J.7
локальное_имя 13.1
имя 4.1
идентификатор_оператора 5.1
часть_варианта 3.8.1
дискретный_выбор 3.8.1
список_дискретных_выборов 3.8.1
список_дискретных_выборов 3.8.1
ассоциация_компонента_массива 4.3.3
альтернатива_оператора_case 5.4
вариант 3.8.1
дискретный_диапазон 3.6.1
дискретный_выбор 3.8.1
ограничение_индекса 3.6.1
срез 4.1.2
определение_подтипа_дискретного 3.6
определение_массива_с_ограничениями 3.6
объявление_входа 9.5.2
спецификация_индекса_входа 9.5.2
спецификация_параметра_цикла 5.5
END_OF_DOCUMENT_MARKER
discriminant_association 3.7.1
discriminant_constraint 3.7.1
discriminant_constraint 3.7.1
composite_constraint 3.2.2
discriminant_part 3.7
formal_type_declaration 12.5
incomplete_type_declaration 3.10.1
private_extension_declaration 7.3
private_type_declaration 7.3
discriminant_specification 3.7
known_discriminant_part 3.7
entry_barrier 9.5.2
entry_body 9.5.2
entry_body 9.5.2
protected_operation_item 9.4
entry_body_formal_part 9.5.2
entry_body 9.5.2
entry_call_alternative 9.7.2
conditional_entry_call 9.7.3
timed_entry_call 9.7.2
entry_call_statement 9.5.3
procedure_or_entry_call 9.7.2
simple_statement 5.1
entry_declaration 9.5.2
protected_operation_declaration 9.4
task_item 9.1
entry_index 9.5.2
accept_statement 9.5.2
entry_index_specification 9.5.2
entry_body_formal_part 9.5.2
enumeration_aggregate 13.4
enumeration_representation_clause 13.4
END_OF_DOCUMENT_MARKER
спецификация_литерала_перечисления 3.5.1
определение_типа_перечисления 3.5.1
определение_представления_перечисления 13.4
оператор_аспекта 13.1
определение_типа_перечисления 3.5.1
определение_типа 3.2.1
выбор_исключения 11.2
обработчик_исключения 11.2
объявление_исключения 11.1
основное_объявление 3.1
обработчик_исключения 11.2
обработанная_последовательность_операторов 11.2
объявление_переименования_исключения 8.5.2
объявление_переименования 8.5
оператор_выхода 5.7
простой_оператор 5.1
явный_фактический_параметр 6.4
ассоциация_параметров 6.4
явная_дериференция 4.1
имя 4.1
явный_фактический_параметр_обобщенного_типа 12.3
ассоциация_обобщенного_типа 12.3
экспонента 2.4.1
литерал_на_основе 2.4.2
десятичная_литерал 2.4.1
выражение 4.4
часть_предка 4.3.2
ассоциация_компонента_массива 4.3.3
оператор_присваивания 5.2
оператор_в_определении J.7
оператор_определения_атрибута 13.3
обозначения_атрибутов 4.1.4
оператор_switch 5.4
условие 5.3
определение_десятичного_числа_с_плавающей_точкой 3.5.9
выражение_по_умолчанию 3.7
оператор_задержки_относительно 9.6
оператор_задержки_до 9.6
ограничение_дельта J.3
ограничение_цифр 3.5.9
дискретный_выбор 3.8.1
ассоциация_дискриминанта 3.7.1
индекс_входа 9.5.2
явный_фактический_параметр 6.4
явный_фактический_параметр_обобщенного_типа 12.3
расширенный_оператор_возврата 6.5
определение_типа_с_плавающей_точкой 3.5.7
индексированный_компонент 4.1.1
оператор_mod J.8
определение_модульного_типа 3.5.4
объявление_числа 3.3.2
объявление_объекта 3.3.1
определение_обычного_числа_с_фиксированной_точкой 3.5.9
позиция 13.5.1
позиционная_агрегация_массива 4.3.3
ассоциация_параметра_pragma 2.8
первичное_выражение 4.4
квалифицированное_выражение 4.7
оператор_выброса 11.3
обозначения_атрибутов_диапазона 4.1.4
ассоциация_компонента_записи 4.3.1
параметр_аргумента_ограничения 13.12
простой_оператор_возврата 6.5
преобразование_типа 4.6
расширенная_цифра 2.4.2
числовое_значение_на_основе 2.4.2
расширенный_оператор_возврата 6.5
сложный_оператор 5.1
агрегация_расширения 4.3.2
агрегация 4.3
множитель 4.4
член 4.4
первый_бит 13.5.1
оператор_компонента 13.5.1
определение_числа_с_фиксированной_точкой 3.5.9
определение_типа_вещественного_числа 3.5.6
END_OF_DOCUMENT_MARKER
определение_типа_с_плавающей_точкой 3.5.7
определение_типа_вещественного 3.5.6
декларация_формального_абстрактного_подпрограммы 12.6
декларация_формальной_подпрограммы 12.6
определение_формального_типа_доступа 12.5.4
определение_формального_типа 12.5
определение_формального_типа_массива 12.5.3
определение_формального_типа 12.5
декларация_формальной_конкретной_подпрограммы 12.6
декларация_формальной_подпрограммы 12.6
определение_формальной_десятичной_определённой_точкой 12.5.2
определение_формального_типа 12.5
определение_формального_производного_типа 12.5.1
определение_формального_типа 12.5
определение_формального_дискретного_типа 12.5.2
определение_формального_типа 12.5
определение_формального_типа_с_плавающей_точкой 12.5.2
определение_формального_типа 12.5
определение_формального_типа_интерфейса 12.5.5
определение_формального_типа 12.5
определение_формального_модульного_типа 12.5.2
определение_формального_типа 12.5
декларация_формального_объекта 12.4
декларация_формального_параметра_генератора 12.1
определение_формального_обычного_фиксированной_точки 12.5.2
определение_формального_типа 12.5
формальная_часть_действительного_пакета 12.7
декларация_формального_пакета 12.7
ассоциация_формального_пакета 12.7
формальная_часть_действительного_пакета 12.7
декларация_формального_пакета 12.7
декларация_формального_параметра_генератора 12.1
формальная_часть 6.1
профиль_параметра_и_результата 6.1
профиль_параметра 6.1
определение_формального_типа_частного 12.5.1
определение_формального_типа 12.5
определение_формального_типа_целого_с_знаком 12.5.2
определение_формального_типа 12.5
декларация_формальной_подпрограммы 12.6
декларация_формального_параметра_генератора 12.1
декларация_формального_типа 12.5
декларация_формального_параметра_генератора 12.1
определение_формального_типа 12.5
декларация_формального_типа 12.5
полная_декларация_типа 3.2.1
декларация_типа 3.2.1
вызов_функции 6.4
имя 4.1
спецификация_функции 6.1
спецификация_подпрограммы 6.1
общий_модификатор_доступа 3.10
доступ_к_объявлению_объекта 3.10
действительная_часть_генератора 12.3
формальная_часть_действительного_пакета 12.7
инстанцирование_генератора 12.3
ассоциация_генератора 12.3
ассоциация_формального_пакета 12.7
действительная_часть_генератора 12.3
декларация_генератора 12.1
базовая_декларация 3.1
декларация_единицы_библиотеки 10.1.1
декларация_формального_параметра_генератора 12.1
формальная_часть_генератора 12.1
формальная_часть_генератора 12.1
декларация_генераторного_пакета 12.1
декларация_генераторной_подпрограммы 12.1
END_OF_DOCUMENT_MARKER
обобщённая_инициализация 12.3
основное_объявление 3.1
объявление_единицы_библиотеки 10.1.1
объявление_обобщённого_пакета 12.1
обобщённое_объявление 12.1
объявление_переименования_обобщения 8.5.5
переименование_объявления_единицы_библиотеки 10.1.1
объявление_переименования 8.5
объявление_обобщённой_подпрограммы 12.1
обобщённое_объявление 12.1
выражение_goto 5.8
простое_выражение 5.1
графический_символ 2.1
символьная_литераль 2.5
элемент_строки 2.6
условие 9.7.1
выборочный_приём 9.7.1
обработанная_последовательность_выражений 11.2
выражение_приёма 9.5.2
выражение_блока 5.6
тело_входной_точки 9.5.2
расширенное_выражение_возврата 6.5
тело_пакета 7.2
тело_подпрограммы 6.3
тело_задачи 9.1
идентификатор 2.3
выражение_приёма 9.5.2
обозначатель_атрибута 4.1.4
выражение_блока 5.6
определяющий_идентификатор 3.1
обозначатель 6.1
прямое_имя 4.1
тело_входной_точки 9.5.2
выражение_цикла 5.5
тело_пакета 7.2
спецификация_пакета 7.1
псевдоним 2.8
связывание_аргумента_псевдонима 2.8
тело_защищённого_блока 9.4
определение_защищённого_блока 9.4
ограничение 13.12
имя_выбора 4.1.3
тело_задачи 9.1
определение_задачи 9.1
расширение_идентификатора 2.3
идентификатор 2.3
начало_идентификатора 2.3
идентификатор 2.3
оператор_if 5.3
составной_оператор 5.1
неявная_дериференция 4.1
префикс 4.1
декларация_неполного_типа 3.10.1
декларация_типа 3.2.1
ограничение_индекса 3.6.1
составное_ограничение 3.2.2
определение_подтипа_индекса 3.6
определение_массива_без_ограничений 3.6
индексированный_компонент 4.1.1
имя 4.1
определение_целочисленного_типа 3.5.4
определение_типа 3.2.1
список_интерфейсов 3.9.4
определение_производного_типа 3.4
определение_формального_производного_типа 12.5.1
определение_типа_интерфейса 3.9.4
объявление_расширения_с_приватным_доступом 7.3
объявление_типа_с_защищенным_доступом 9.4
отдельное_объявление_с_защищенным_доступом 9.4
отдельное_объявление_задачи 9.1
объявление_типа_задачи 9.1
определение_типа_интерфейса 3.9.4
определение_формального_типа_интерфейса 12.5.5
определение_типа 3.2.1
схема_итерации 5.5
оператор_цикла 5.5
известная_часть_дискриминанта 3.7
часть_дискриминанта 3.7
полное_определение_типа 3.2.1
защищённое_определение_типа 9.4
определение_типа_задачи 9.1
метка 5.1
оператор 5.1
последний_бит 13.5.1
оператор_компонента 13.5.1
строчная_буква ...
начало_идентификатора 2.3
модификатор_буквы ...
начало_идентификатора 2.3
другая_буква ...
начало_идентификатора 2.3
заглавная_буква ...
начало_идентификатора 2.3
прописная_буква ...
начало_идентификатора 2.3
элемент_библиотеки 10.1.1
единица_компиляции 10.1.1
тело_единицы_библиотеки 10.1.1
элемент_библиотеки 10.1.1
декларация_единицы_библиотеки 10.1.1
элемент_библиотеки 10.1.1
переименование_декларации_единицы_библиотеки 10.1.1
элемент_библиотеки 10.1.1
оператор_with_с_ограничением 10.1.2
оператор_with 10.1.2
локальное_имя 13.1
оператор_определения_атрибута 13.3
оператор_компонента 13.5.1
оператор_представления_перечисления 13.4
оператор_представления_записи 13.5.1
указание_параметра_цикла 5.5
схема_итерации 5.5
оператор_цикла 5.5
сложный_оператор 5.1
неразрывный_знак ...
расширение_идентификатора 2.3
соединяющий_знак_пробела ...
расширение_идентификатора 2.3
оператор_mod J.8
оператор_представления_записи 13.5.1
режим 6.1
декларация_объекта_формального 12.4
указание_параметра 6.1
модульное_определение_типа 3.5.4
определение_целочисленного_типа 3.5.4
операция_умножения 4.5
слагаемое 4.4
END_OF_DOCUMENT_MARKER
имя 4.1
оператор_прерывания 9.8
оператор_присваивания 5.2
оператор_определения_атрибута 13.3
имя_по_умолчанию 12.6
оператор_вызова_входной_точки 9.5.3
выбор_исключения 11.2
объявление_переименования_исключения 8.5.2
оператор_выхода 5.7
явный_параметр_факта 6.4
явное_разыменование 4.1
явный_параметр_факта_обобщенного_типа 12.3
объявление_пакета 12.7
вызов_функции 6.4
обобщенная_инстанциация 12.3
объявление_переименования_обобщенного_типа 8.5.5
оператор_перехода 5.8
неявное_разыменование 4.1
оператор_связывания_с_ограничением 10.1.2
локальное_имя 13.1
оператор_связывания_без_ограничения 10.1.2
объявление_переименования_объекта 8.5.1
объявление_переименования_пакета 8.5.3
имя_родительского_модуля 10.1.1
связь_аргументов_псевдонима 2.8
префикс 4.1
основной_элемент 4.4
оператор_вызова_процедуры 6.4
оператор_выбрасывания_исключения 11.3
оператор_переочередивания 9.5.4
аргумент_параметра_ограничения 13.12
объявление_переименования_подпрограммы 8.5.4
маркер_подтипа 3.2.2
преобразование_типа 4.6
оператор_использования_пакета 8.4
массив_с_именем_агрегата 4.3.3
агрегат_массива 4.3.3
оператор_связывания_без_ограничения 10.1.2
оператор_связывания 10.1.2
исключение_нулевого_значения 3.10
определение_с_доступом 3.10
определение_типа_с_доступом 3.10
указание_дискриминанта 3.7
объявление_формального_объекта 12.4
объявление_переименования_объекта 8.5.1
профиль_параметра_и_результата 6.1
указание_параметра 6.1
указание_подтипа 3.2.2
объявление_пустой_процедуры 6.7
базовое_объявление 3.1
оператор_пустого_действия 5.1
простой_оператор 5.1
десятичное_число ...
расширение_идентификатора 2.3
объявление_числа 3.3.2
базовое_объявление 3.1
буква_числа ...
начало_идентификатора 2.3
числовое_значение 2.4.1
основание 2.4.2
десятичная_константа 2.4.1
экспонента 2.4.1
числовая_константа 2.4
основной_элемент 4.4
объявление_объекта 3.3.1
базовое_объявление 3.1
объявление_переименования_объекта 8.5.1
объявление_переименования 8.5
символ_оператора 6.1
определяющий_символ_оператора 6.1
обозначение 6.1
прямое_имя 4.1
имя_селектора 4.1.3
определение_обычной_фиксированной_точки 3.5.9
определение_фиксированной_точки 3.5.9
другой_формат ...
расширение_идентификатора 2.3
overriding_indicator 8.3.1
abstract_subprogram_declaration 3.9.3
entry_declaration 9.5.2
generic_instantiation 12.3
null_procedure_declaration 6.7
subprogram_body 6.3
subprogram_body_stub 10.1.3
subprogram_declaration 6.1
subprogram_renaming_declaration 8.5.4
package_body 7.2
library_unit_body 10.1.1
proper_body 3.11
package_body_stub 10.1.3
body_stub 10.1.3
package_declaration 7.1
basic_declaration 3.1
library_unit_declaration 10.1.1
package_renaming_declaration 8.5.3
library_unit_renaming_declaration 10.1.1
renaming_declaration 8.5
package_specification 7.1
generic_package_declaration 12.1
package_declaration 7.1
parameter_and_result_profile 6.1
access_definition 3.10
access_to_subprogram_definition 3.10
function_specification 6.1
parameter_association 6.4
actual_parameter_part 6.4
parameter_profile 6.1
accept_statement 9.5.2
access_definition 3.10
access_to_subprogram_definition 3.10
entry_body_formal_part 9.5.2
entry_declaration 9.5.2
procedure_specification 6.1
parameter_specification 6.1
formal_part 6.1
parent_unit_name 10.1.1
defining_program_unit_name 6.1
designator 6.1
package_body 7.2
package_specification 7.1
subunit 10.1.3
position 13.5.1
component_clause 13.5.1
positional_array_aggregate 4.3.3
array_aggregate 4.3.3
pragma_argument_association 2.8
pragma 2.8
prefix 4.1
attribute_reference 4.1.4
function_call 6.4
indexed_component 4.1.1
procedure_call_statement 6.4
range_attribute_reference 4.1.4
selected_component 4.1.3
slice 4.1.2
primary 4.4
factor 4.4
private_extension_declaration 7.3
type_declaration 3.2.1
private_type_declaration 7.3
type_declaration 3.2.1
procedure_call_statement 6.4
procedure_or_entry_call 9.7.2
simple_statement 5.1
procedure_or_entry_call 9.7.2
entry_call_alternative 9.7.2
triggering_statement 9.7.4
procedure_specification 6.1
null_procedure_declaration 6.7
subprogram_specification 6.1
END_OF_DOCUMENT_MARKER
proper_body 3.11
body 3.11
subunit 10.1.3
protected_body 9.4
proper_body 3.11
protected_body_stub 10.1.3
body_stub 10.1.3
protected_definition 9.4
protected_type_declaration 9.4
single_protected_declaration 9.4
protected_element_declaration 9.4
protected_definition 9.4
protected_operation_declaration 9.4
protected_definition 9.4
protected_element_declaration 9.4
protected_operation_item 9.4
protected_body 9.4
protected_type_declaration 9.4
full_type_declaration 3.2.1
punctuation_connector ...
identifier_extend 2.3
qualified_expression 4.7
allocator 4.8
code_statement 13.8
primary 4.4
raise_statement 11.3
simple_statement 5.1
range 3.5
discrete_range 3.6.1
discrete_subtype_definition 3.6
range_constraint 3.5
relation 4.4
range_attribute_designator 4.1.4
range_attribute_reference 4.1.4
range_attribute_reference 4.1.4
range 3.5
range_constraint 3.5
delta_constraint J.3
digits_constraint 3.5.9
scalar_constraint 3.2.2
real_range_specification 3.5.7
decimal_fixed_point_definition 3.5.9
floating_point_definition 3.5.7
ordinary_fixed_point_definition 3.5.9
real_type_definition 3.5.6
type_definition 3.2.1
record_aggregate 4.3.1
aggregate 4.3
record_component_association 4.3.1
record_component_association_list 4.3.1
record_component_association_list 4.3.1
extension_aggregate 4.3.2
record_aggregate 4.3.1
record_definition 3.8
record_extension_part 3.9.1
record_type_definition 3.8
record_extension_part 3.9.1
derived_type_definition 3.4
record_representation_clause 13.5.1
aspect_clause 13.1
record_type_definition 3.8
type_definition 3.2.1
relation 4.4
expression 4.4
relational_operator 4.5
relation 4.4
renaming_declaration 8.5
basic_declaration 3.1
requeue_statement 9.5.4
simple_statement 5.1
restriction_parameter_argument 13.12
restriction 13.12
END_OF_DOCUMENT_MARKER
указание_типа_возвращаемого_значения 6.5
расширенная_команда_возврата 6.5
скалярное_ограничение 3.2.2
ограничение 3.2.2
альтернатива_выбора 9.7.1
выбор_принятия 9.7.1
команда_выбора 9.7
составная_команда 5.1
выбранный_компонент 4.1.3
имя 4.1
выбор_принятия 9.7.1
команда_выбора 9.7
имя_селектора 4.1.3
список_выбора_компонентов 4.3.1
ассоциация_дискриминанта 3.7.1
формальная_ассоциация_пакета 12.7
ассоциация_обобщенного_типа 12.3
ассоциация_параметра 6.4
выбранный_компонент 4.1.3
последовательность_команд 5.1
прерывимая_часть 9.7.4
альтернатива_принятия 9.7.1
альтернатива_команды_case 5.4
условный_вызов_входа 9.7.3
альтернатива_задержки 9.7.1
альтернатива_вызова_входа 9.7.2
обработчик_исключений 11.2
обрабатываемая_последовательность_команд 11.2
команда_if 5.3
команда_цикла 5.5
выбор_принятия 9.7.1
триггерная_альтернатива 9.7.4
определение_типа_целого_числа_со_знаком 3.5.4
определение_типа_целого_числа 3.5.4
простое_выражение 4.4
первый_бит 13.5.1
последний_бит 13.5.1
диапазон 3.5
спецификация_диапазона_вещественных_чисел 3.5.7
отношение 4.4
определение_типа_целого_числа_со_знаком 3.5.4
простая_команда_возврата 6.5
простая_команда 5.1
простая_команда 5.1
команда 5.1
одиночное_защищенное_объявление 9.4
объявление_объекта 3.3.1
одиночное_объявление_задачи 9.1
объявление_объекта 3.3.1
срез 4.1.2
имя 4.1
команда 5.1
последовательность_команд 5.1
идентификатор_команды 5.1
команда_блока 5.6
метка 5.1
команда_цикла 5.5
элемент_строки 2.6
строковая_литераль 2.6
строковая_литераль 2.6
символ_оператора 6.1
первичное_выражение 4.4
тело_подпрограммы 6.3
тело_единицы_библиотеки 10.1.1
собственное_тело 3.11
элемент_защищенной_операции 9.4
заглушка_тела_подпрограммы 10.1.3
заглушка_тела 10.1.3
объявление_подпрограммы 6.1
базовое_объявление 3.1
объявление_единицы_библиотеки 10.1.1
объявление_защищенной_операции 9.4
элемент_защищенной_операции 9.4
по умолчанию_подпрограммы 12.6
формальное_абстрактное_объявление_подпрограммы 12.6
формальное_конкретное_объявление_подпрограммы 12.6
END_OF_DOCUMENT_MARKER
объявление_переименования_подпрограммы 8.5.4
объявление_переименования_единицы_библиотеки 10.1.1
объявление_переименования 8.5
спецификация_подпрограммы 6.1
объявление_абстрактной_подпрограммы 3.9.3
формальное_объявление_абстрактной_подпрограммы 12.6
формальное_объявление_конкретной_подпрограммы 12.6
объявление_подпрограммы_с_параметром_генеризации 12.1
тело_подпрограммы 6.3
заглушка_тела_подпрограммы 10.1.3
объявление_подпрограммы 6.1
объявление_переименования_подпрограммы 8.5.4
объявление_типа_подтипа 3.2.2
основное_объявление 3.1
указание_типа_подтипа 3.2.2
определение_доступа_к_объекту 3.10
аллокатор 4.8
определение_компонента 3.6
определение_производного_типа 3.4
дискретный_диапазон 3.6.1
определение_дискретного_подтипа 3.6
объявление_объекта 3.3.1
объявление_расширения_частного 7.3
указание_подтипа_возвращаемого_значения 6.5
объявление_типа_подтипа 3.2.2
метка_подтипа 3.2.2
определение_доступа 3.10
часть_предка 4.3.2
спецификация_дискриминанта 3.7
явный_параметр_факта_генеризации 12.3
формальное_определение_производного_типа 12.5.1
формальное_объявление_объекта 12.4
определение_подтипа_индекса 3.6
список_интерфейсов 3.9.4
объявление_переименования_объекта 8.5.1
профиль_параметра_и_результата 6.1
спецификация_параметра 6.1
квалифицированное_выражение 4.7
отношение 4.4
указание_типа_подтипа 3.2.2
преобразование_типов 4.6
оператор_использования_типа 8.4
подраздел 10.1.3
единица_компиляции 10.1.1
тело_задачи 9.1
правильное_тело 3.11
заглушка_тела_задачи 10.1.3
заглушка_тела 10.1.3
определение_задачи 9.1
объявление_одиночной_задачи 9.1
объявление_типа_задачи 9.1
элемент_задачи 9.1
определение_задачи 9.1
объявление_типа_задачи 9.1
полное_объявление_типа 3.2.1
term 4.4
simple_expression 4.4
terminate_alternative 9.7.1
select_alternative 9.7.1
timed_entry_call 9.7.2
select_statement 9.7
triggering_alternative 9.7.4
asynchronous_select 9.7.4
triggering_statement 9.7.4
triggering_alternative 9.7.4
type_conversion 4.6
name 4.1
type_declaration 3.2.1
basic_declaration 3.1
type_definition 3.2.1
full_type_declaration 3.2.1
unary_adding_operator 4.5
simple_expression 4.4
unconstrained_array_definition 3.6
array_type_definition 3.6
подчёркивание ...
числительное_с_основанием 2.4.2
числительное 2.4.1
неизвестная_часть_дискриминанта 3.7
часть_дискриминанта 3.7
оператор_использования 8.4
основной_элемент_декларации 3.11
элемент_контекста 10.1.2
формальная_часть_обобщения 12.1
оператор_использования_пакета 8.4
оператор_использования 8.4
оператор_использования_типа 8.4
оператор_использования 8.4
вариант 3.8.1
часть_варианта 3.8.1
часть_варианта 3.8.1
список_компонентов 3.8
оператор_с_ 10.1.2
элемент_контекста 10.1.2


Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API