]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/bin/recomm/recommParser.mly
milestone update in ground
[helm.git] / matita / matita / contribs / lambdadelta / bin / recomm / recommParser.mly
index d8c655bf72695175c7a43f3895127f5baa97da9e..5e71743a9a087a817fb4b232a7d0f98dd6a4509b 100644 (file)
@@ -30,6 +30,10 @@ inn:
   | CW    { $1 }
   | HW    { $1 }
 
+inn_w:
+  | inn   { $1 }
+  | SR    { $1 }
+
 inns_r:
   | inn_r      { $1      }
   | inn_r inns { $1 ^ $2 }
@@ -38,6 +42,10 @@ inns:
   | inn      { $1      }
   | inn inns { $1 ^ $2 }
 
+inns_w:
+  | inn_w        { $1      }
+  | inn_w inns_w { $1 ^ $2 }
+
 out:
   | SP { $1 }
   | SR { $1 }
@@ -79,16 +87,16 @@ sws:
   | SP sw sws { $2 :: $3 }
 
 src_l:
-  | NL               { ET.Line  $1                        }
-  | OP sp PP inns CP { ET.Mark  $4                        }
-  | OP sp KW inns CP { ET.Key   ($3, $4)                  }
-  | OP sp CW cws CP  { ET.Title ($3 :: $4)                }
-  | OP sp HW sws CP  { ET.Slice (lc $3 :: $4)             }
-  | OP sp CP         { ET.Other (0, $1, $2, $3)           }
-  | OP sp inns_r CP  { ET.Other (0, $1, $2 ^ $3, $4)      }
-  | OP SR inns CP    { ET.Other (1, $1, $2 ^ $3, $4)      }
-  | OP SR SR inns CP { ET.Other (2, $1, $2 ^ $3 ^ $4, $5) }
-  | OP SP SR inns CP { ET.Mark  $4                        }
+  | NL                 { ET.Line  $1                        }
+  | OP sp PP inns CP   { ET.Mark  $4                        }
+  | OP sp KW inns_w CP { ET.Key   ($3, $4)                  }
+  | OP sp CW cws CP    { ET.Title ($3 :: $4)                }
+  | OP sp HW sws CP    { ET.Slice (lc $3 :: $4)             }
+  | OP sp CP           { ET.Other (0, $1, $2, $3)           }
+  | OP sp inns_r CP    { ET.Other (0, $1, $2 ^ $3, $4)      }
+  | OP SR inns CP      { ET.Other (1, $1, $2 ^ $3, $4)      }
+  | OP SR SR inns CP   { ET.Other (2, $1, $2 ^ $3 ^ $4, $5) }
+  | OP SP SR inns CP   { ET.Mark  $4                        }
 
 src:
   | outs { ET.Text $1 }