24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
-- Formal types represent common objets for all the command, Shared_State --
-- begin read/write while Shared_Context is read-only. --
------------------------------------------------------------------------------
with Natools.S_Expressions.Lockable;
private with Ada.Containers.Indefinite_Ordered_Maps;
private with Natools.S_Expressions.Atom_Buffers;
generic
type Shared_State (<>) is limited private;
type Shared_Context (<>) is limited private;
package Natools.S_Expressions.Interpreters is
pragma Preelaborate (Interpreters);
|
|
|
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
-- Formal types represent common objets for all the command, Shared_State --
-- begin read/write while Shared_Context is read-only. --
------------------------------------------------------------------------------
with Natools.S_Expressions.Lockable;
private with Ada.Containers.Indefinite_Ordered_Maps;
private with Natools.S_Expressions.Atom_Refs;
generic
type Shared_State (<>) is limited private;
type Shared_Context (<>) is limited private;
package Natools.S_Expressions.Interpreters is
pragma Preelaborate (Interpreters);
|
117
118
119
120
121
122
123
124
125
126
127
|
package Command_Maps is new Ada.Containers.Indefinite_Ordered_Maps
(Atom, Command'Class, Less_Than);
type Interpreter is new Command with record
Commands : Command_Maps.Map;
Max_Length : Count := 0;
Fallback_Name : Atom_Buffers.Atom_Refs.Reference;
end record;
end Natools.S_Expressions.Interpreters;
|
|
|
117
118
119
120
121
122
123
124
125
126
127
|
package Command_Maps is new Ada.Containers.Indefinite_Ordered_Maps
(Atom, Command'Class, Less_Than);
type Interpreter is new Command with record
Commands : Command_Maps.Map;
Max_Length : Count := 0;
Fallback_Name : Atom_Refs.Reference;
end record;
end Natools.S_Expressions.Interpreters;
|