summaryrefslogtreecommitdiff
path: root/test/rat_tests-parse_graphs.adb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rat_tests-parse_graphs.adb')
-rw-r--r--test/rat_tests-parse_graphs.adb45
1 files changed, 24 insertions, 21 deletions
diff --git a/test/rat_tests-parse_graphs.adb b/test/rat_tests-parse_graphs.adb
index e445f1b..981bb2c 100644
--- a/test/rat_tests-parse_graphs.adb
+++ b/test/rat_tests-parse_graphs.adb
@@ -1,6 +1,9 @@
-with Packrat.Parse_Graphs;
+with
+
+ Packrat.Traits,
+ Packrat.Parse_Graphs;
package body Rat_Tests.Parse_Graphs is
@@ -10,38 +13,38 @@ package body Rat_Tests.Parse_Graphs is
(Noun, Determiner, Noun_Phrase, Preposition,
Prepositional_Phrase, Verb, Verb_Phrase, Sentence);
- package String_Tokens is new Packrat.Tokens (My_Labels, Character, String);
- package Graphs is new Packrat.Parse_Graphs (My_Labels, Character, String, "<", String_Tokens);
+ package My_Traits is new Packrat.Traits (My_Labels, Character, String);
+ package Graphs is new Packrat.Parse_Graphs (My_Traits);
-- These tokens are defined here purely to reduce verbosity when
-- manually constructing the various test graphs in the package initialisation.
- Noun_1 : String_Tokens.Token := String_Tokens.Create (Noun, 1, "i");
- Noun_4 : String_Tokens.Token := String_Tokens.Create (Noun, 4, "man");
- Noun_7 : String_Tokens.Token := String_Tokens.Create (Noun, 7, "park");
- Noun_10 : String_Tokens.Token := String_Tokens.Create (Noun, 10, "bat");
+ Noun_1 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun, 1, "i");
+ Noun_4 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun, 4, "man");
+ Noun_7 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun, 7, "park");
+ Noun_10 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun, 10, "bat");
- Det_3 : String_Tokens.Token := String_Tokens.Create (Determiner, 3, "a");
- Det_6 : String_Tokens.Token := String_Tokens.Create (Determiner, 6, "the");
- Det_9 : String_Tokens.Token := String_Tokens.Create (Determiner, 9, "a");
+ Det_3 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Determiner, 3, "a");
+ Det_6 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Determiner, 6, "the");
+ Det_9 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Determiner, 9, "a");
- NP_1 : String_Tokens.Token := String_Tokens.Create (Noun_Phrase, 1, "");
- NP_3 : String_Tokens.Token := String_Tokens.Create (Noun_Phrase, 3, "");
- NP_6 : String_Tokens.Token := String_Tokens.Create (Noun_Phrase, 6, "");
- NP_9 : String_Tokens.Token := String_Tokens.Create (Noun_Phrase, 9, "");
+ NP_1 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun_Phrase, 1, "");
+ NP_3 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun_Phrase, 3, "");
+ NP_6 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun_Phrase, 6, "");
+ NP_9 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Noun_Phrase, 9, "");
- Prep_5 : String_Tokens.Token := String_Tokens.Create (Preposition, 5, "in");
- Prep_8 : String_Tokens.Token := String_Tokens.Create (Preposition, 8, "with");
+ Prep_5 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Preposition, 5, "in");
+ Prep_8 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Preposition, 8, "with");
- PP_5 : String_Tokens.Token := String_Tokens.Create (Prepositional_Phrase, 5, "");
- PP_8 : String_Tokens.Token := String_Tokens.Create (Prepositional_Phrase, 8, "");
+ PP_5 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Prepositional_Phrase, 5, "");
+ PP_8 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Prepositional_Phrase, 8, "");
- Verb_2 : String_Tokens.Token := String_Tokens.Create (Verb, 2, "saw");
+ Verb_2 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Verb, 2, "saw");
- VP_2 : String_Tokens.Token := String_Tokens.Create (Verb_Phrase, 2, "");
+ VP_2 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Verb_Phrase, 2, "");
- Sen_1 : String_Tokens.Token := String_Tokens.Create (Sentence, 1, "");
+ Sen_1 : My_Traits.Tokens.Token := My_Traits.Tokens.Create (Sentence, 1, "");
-- This should be set up to be identical to the example parse in the paper