/usr/share/ada/adainclude/opentoken/opentoken-production-parser-lalr.adb is in libopentoken5-dev 6.0b-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | with Ada.Strings.Fixed;
with Ada.Text_IO;
package body OpenToken.Production.Parser.LALR is
function State_Image (Item : in State_Index) return String
is
use Ada.Strings;
use Ada.Strings.Fixed;
begin
return Trim (State_Index'Image (Item), Both);
end State_Image;
procedure Put (Item : in Parse_Action_Rec)
is
use Ada.Text_IO;
begin
case Item.Verb is
when Shift =>
Put ("shift and goto state" & State_Index'Image (Item.State));
when Reduce =>
Put
("reduce" & Integer'Image (Item.Token_Count) & " tokens to " & Token.Token_Image (Token.ID (Item.LHS.all)));
when Accept_It =>
Put ("accept it");
when Error =>
Put ("ERROR");
end case;
end Put;
end OpenToken.Production.Parser.LALR;
|