summaryrefslogtreecommitdiff
path: root/packrat_parser_lib_notes.txt
diff options
context:
space:
mode:
authorJed Barber <jjbarber@y7mail.com>2019-01-08 16:29:30 +1100
committerJed Barber <jjbarber@y7mail.com>2019-01-08 16:29:30 +1100
commit2912e22000bff5b83b77daeb2b5ed111c47268b8 (patch)
treee953e4387171f3308c4b14cf7ca0ebfb7dc391e2 /packrat_parser_lib_notes.txt
parent1e67356ba64622e07877db1c65f823f0f58b1321 (diff)
Packrat.Errors specification and tests
Diffstat (limited to 'packrat_parser_lib_notes.txt')
-rw-r--r--packrat_parser_lib_notes.txt19
1 files changed, 15 insertions, 4 deletions
diff --git a/packrat_parser_lib_notes.txt b/packrat_parser_lib_notes.txt
index a09babf..8bcac69 100644
--- a/packrat_parser_lib_notes.txt
+++ b/packrat_parser_lib_notes.txt
@@ -220,18 +220,26 @@ Pretty_Print
Packrat.Error
(actually a nested package, as this functionality is important to parsers/lexers)
- functions to handle and process exception messages
- - exception messages take the form of one or more "s<SYMBOLNAME>p<POSITION>" separated by a space
+ - exception messages take the form of one or more "s<SYMBOLNAME>p<POSITION>" substrings joined together,
+ with each symbol name being in all capitals and each position being a positive integer
- this message represents the list of expected symbols at particular positions that would have resulted in a
more complete parse
+ - one of these messages will be raised with an exception of no valid parse is possible with a given input
List of datatypes:
-Error_Info (containing an enum of the symbol expected, and a natural of the position)
+Error_Message
+Error_Info (containing a string of the symbol name expected, and a natural of the position)
+Error_Info_Array
List of funcs:
-Newcode
+Valid_Message
+Valid_Identifier
+Valid_Identifier_Array
+Join
Encode
+Encode_Array
Decode
-Join
+(the message format ensures that using "&" to join messages will still result in a valid message)
@@ -249,6 +257,9 @@ Run_Tests
Ratnest.Tests
List of funcs:
+In_Set_Check
+Not_In_Set_Check
+
Is_Digit_Check
Is_Hex_Check
Is_Letter_Check