From 5a01394fadfe73cc9bfdc3576a58ac3cd4dcb1f2 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Mon, 14 Jan 2019 19:03:33 +1100 Subject: Implemented details of Lexer_Context type --- test/packrat-lexer-debug.adb | 32 ++++++++++++++++++++++++++++++++ test/packrat-lexer-debug.ads | 29 +++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) (limited to 'test') diff --git a/test/packrat-lexer-debug.adb b/test/packrat-lexer-debug.adb index fdd9ae4..f13a675 100644 --- a/test/packrat-lexer-debug.adb +++ b/test/packrat-lexer-debug.adb @@ -86,6 +86,38 @@ package body Packrat.Lexer.Debug is end Debug_String; + + + + function So_Far + (This : in Lexer_Context) + return Token_Vector is + begin + return (This.Result_So_Far with null record); + end So_Far; + + function Position + (This : in Lexer_Context) + return Positive is + begin + return This.Position; + end Position; + + function Status + (This : in Lexer_Context) + return Result_Status is + begin + return This.Status; + end Status; + + function Pass + (This : in Lexer_Context) + return access Element_Array is + begin + return This.Pass_Forward; + end Pass; + + end Packrat.Lexer.Debug; diff --git a/test/packrat-lexer-debug.ads b/test/packrat-lexer-debug.ads index e8ddf7b..e68d6f4 100644 --- a/test/packrat-lexer-debug.ads +++ b/test/packrat-lexer-debug.ads @@ -1,5 +1,10 @@ +with + + Ada.Containers.Vectors; + + generic package Packrat.Lexer.Debug is @@ -26,12 +31,36 @@ package Packrat.Lexer.Debug is return String; + + + type Token_Vector is private; + + function So_Far + (This : in Lexer_Context) + return Token_Vector; + + function Position + (This : in Lexer_Context) + return Positive; + + function Status + (This : in Lexer_Context) + return Result_Status; + + function Pass + (This : in Lexer_Context) + return access Element_Array; + + private Empty_Fail : constant Combinator_Result := Packrat.Lexer.Empty_Fail; + type Token_Vector is new Token_Vectors.Vector with null record; + + end Packrat.Lexer.Debug; -- cgit