direct_name | explicit_dereference
| indexed_component | slice
| selected_component | attribute_reference
| type_conversion | function_call
| character_literal
Limit -- the direct name of a constant (see 3.3.1)
Count -- the direct name of a scalar variable (see 3.3.1)
Board -- the direct name of an array variable (see 3.6.1)
Matrix -- the direct name of a type (see 3.6)
Random -- the direct name of a function (see 6.1)
Error -- the direct name of an exception (see 11.1)
-- the access variable Next_Car (see 3.10.1)
Next_Car.Owner -- selected component with implicit dereference;
-- same as Next_Car.all.Owner
Page(10) -- a component of a one-dimensional array (see 3.6)
Board(M, J + 1) -- a component of a two-dimensional array (see 3.6.1)
Page(10)(20) -- a component of a component (see 3.6)
Request(Medium) -- an entry in a family of entries (see 9.1)
Next_Frame(L)(M, N) -- a component of a function call (see 6.1)
Page(10 .. 10 + Size) -- a slice of 1 + Size components (see 3.6)
Page(L)(A .. B) -- a slice of the array Page(L) (see 3.6)
Stars(1 .. 0) -- a null slice (see 3.6.3)
My_Schedule(Weekday) -- bounds given by subtype (see 3.6.1 and 3.5.1)
Stars(5 .. 15)(K) -- same as Stars(K) (see 3.6.3)
-- provided that K is in 5 .. 15
Next_Car.Owner -- a record component (see 3.10.1)
Next_Car.Owner.Age -- a record component (see 3.10.1)
-- the previous two lines involve implicit dereferences
Writer.Unit -- a record component (a discriminant) (see 3.8.1)
Min_Cell(H).Value -- a record component of the result (see 6.1)
-- of the function call Min_Cell(H)
Control.Seize -- an entry of a protected object (see 9.4)
Pool(K).Write -- an entry of the task Pool(K) (see 9.4)
Dot_Product.Sum -- a variable declared in a function body (see 6.1)
Buffer.Pool -- a variable declared in a protected unit (see 9.11)
Buffer.Read -- an entry of a protected unit (see 9.11)
Swap.Temp -- a variable declared in a block statement (see 5.6)
Standard.Boolean -- the name of a predefined type (see A.1)
identifier[(static_expression)]
| Access | Delta | Digits
Rainbow'Base'First -- same as Color'First (see 3.5.1)
Real'Digits -- precision of the type Real (see 3.5.7)
Board'Last(2) -- upper bound of the second dimension of Board (see 3.6.1)
Board'Range(1) -- index range of the first dimension of Board (see 3.6.1)
Pool(K)'Terminated -- True if task Pool(K) is terminated (see 9.1)
Date'Size -- number of bits for records of type Date (see 3.8)
Message'Address -- address of the record variable Message (see 3.7.1)