summaryrefslogtreecommitdiff
path: root/web/yacco2/qa/TS_la7.lex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/yacco2/qa/TS_la7.lex
Initial commit
Diffstat (limited to 'web/yacco2/qa/TS_la7.lex')
-rw-r--r--web/yacco2/qa/TS_la7.lex65
1 files changed, 65 insertions, 0 deletions
diff --git a/web/yacco2/qa/TS_la7.lex b/web/yacco2/qa/TS_la7.lex
new file mode 100644
index 0000000000..e0c50e00cf
--- /dev/null
+++ b/web/yacco2/qa/TS_la7.lex
@@ -0,0 +1,65 @@
+/*
+$echo FILE: TS_la7.lex
+$echo Purpose: test la expr with nested rule references in Rminus_la 'eolr - Rminus_la'
+$echo Okay
+*/
+fsm
+(fsm-id "TS_la7.lex",fsm-filename TS_la7,fsm-namespace NS_TS_la7
+,fsm-class CTS_la7
+,fsm-version "1.0" ,fsm-date "17 Juin 2003",fsm-debug "true"
+,fsm-comments "end-of-line recognizer")
+parallel-parser
+(
+ parallel-thread-function
+ TH_TS_la7
+ ***
+ parallel-la-boundary
+ eolr - Rminus_la
+ ***
+)
+@"/usr/local/yacco2/compiler/grammars/yacco2_T_includes.T"
+
+rules{
+Reol AD AB(){
+ -> Rdelimiters
+}
+
+
+Rdelimiters AD AB()
+{
+ -> "x0a"
+ -> "x0d" |.|
+ -> "x0d" "x0a"
+}
+Rminus_la AD AB() {
+ -> "_"
+ -> "-"
+ -> RUPPER_A_M
+ -> RUPPER_N_Z
+ -> Rlower_a_m
+ -> Rlower_n_z
+ -> RNUMBERS
+}
+
+RUPPER_A_M AD AB (){
+ -> A -> B -> C -> D -> E -> F -> G -> H -> I -> J -> K -> L -> M
+}
+
+RUPPER_N_Z AD AB (){
+ -> N -> O -> P -> Q
+ -> "R" // considered a Rule when not quoted!
+ -> S -> T -> U -> V -> W -> X -> Y -> Z
+}
+
+Rlower_a_m AD AB (){
+ -> a -> b -> c -> d -> e -> f -> g -> h -> i -> j -> k -> l -> m
+}
+
+Rlower_n_z AD AB (){
+ -> n -> o -> p -> q -> r -> s -> t -> u -> v -> w -> x -> y -> z
+}
+
+RNUMBERS AD AB (){
+ -> 0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 8 -> 9
+}
+}// end of rules