/[geocaml]/geocaml/src/parser.mly
ViewVC logotype

Diff of /geocaml/src/parser.mly

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by adoniec, Mon Mar 31 07:41:41 2003 UTC revision 1.4 by gmariano, Sun Sep 7 14:28:28 2003 UTC
# Line 55  declaration_point: Line 55  declaration_point:
55  | IDENTIFIANT UN POINT DE IDENTIFIANT { point_on $1 $5 }  | IDENTIFIANT UN POINT DE IDENTIFIANT { point_on $1 $5 }
56  | IDENTIFIANT LE MILIEU DE IDENTIFIANT { middle2 $1 $5 }  | IDENTIFIANT LE MILIEU DE IDENTIFIANT { middle2 $1 $5 }
57  | IDENTIFIANT LE MILIEU DE IDENTIFIANT ET IDENTIFIANT { middle $1 $5 $7 }  | IDENTIFIANT LE MILIEU DE IDENTIFIANT ET IDENTIFIANT { middle $1 $5 $7 }
58  | IDENTIFIANT INTERSECTION DE identification_line ET identification_line { intersection $1 $4 $6 }  | IDENTIFIANT INTERSECTION DE identification_line ET identification_line
59  | IDENTIFIANT ET IDENTIFIANT INTERSECTION DE IDENTIFIANT ET IDENTIFIANT { double_intersection $1 $3 $6 $8 }          { intersection $1 $4 $6 }
60  | list_of_point NUM POINT { if (List.length $1)==$2 then MULTIPLE $1 else raise (Wrong_number_declaration ($2,"points")) }  | IDENTIFIANT ET IDENTIFIANT INTERSECTION DE IDENTIFIANT ET IDENTIFIANT
61  | list_of_point NUM POINT QUELCONQUE { if (List.length $1)==$2 then MULTIPLE $1 else raise (Wrong_number_declaration ($2,"points")) }          { double_intersection $1 $3 $6 $8 }
62    | list_of_point NUM POINT
63            { if (List.length $1)==$2
64                    then MULTIPLE $1
65                    else raise (Wrong_number_declaration ($2,"points"))
66            }
67    | list_of_point NUM POINT QUELCONQUE
68            { if (List.length $1)==$2
69                    then MULTIPLE $1
70                    else raise (Wrong_number_declaration ($2,"points"))
71            }
72  ;  ;
73    
74  list_of_point:  list_of_point:
# Line 67  list_of_point: Line 77  list_of_point:
77  ;  ;
78    
79  declaration_line:  declaration_line:
80  | IDENTIFIANT UNE DROITE QUELCONQUE { any_line $1 }  | IDENTIFIANT UNE DROITE QUELCONQUE
81  | IDENTIFIANT LA DROITE PASSANT PAR IDENTIFIANT ET IDENTIFIANT { line $1 $6 $8 }          { any_line $1 }
82  | IDENTIFIANT LE SEGMENT PASSANT PAR IDENTIFIANT ET IDENTIFIANT { segment $1 $6 $8 }  | IDENTIFIANT LA DROITE PASSANT PAR IDENTIFIANT ET IDENTIFIANT
83  | IDENTIFIANT LA DROITE PARALLELE A identification_line PASSANT PAR IDENTIFIANT { parallel $1 $6 $9 }          { line $1 $6 $8 }
84  | IDENTIFIANT LE SEGMENT PARALLELE A identification_line PASSANT PAR IDENTIFIANT ET DE LONGUEUR NORME IDENTIFIANT VIRGULE IDENTIFIANT NORME { parallel_seg $1 $6 $9 $14 $16 }  | IDENTIFIANT LE SEGMENT PASSANT PAR IDENTIFIANT ET IDENTIFIANT
85  | IDENTIFIANT LA DROITE PERPENDICULAIRE A identification_line PASSANT PAR IDENTIFIANT { perpendicular $1 $6 $9 }          { segment $1 $6 $8 }
86  | IDENTIFIANT LE SEGMENT PERPENDICULAIRE A identification_line PASSANT PAR IDENTIFIANT ET DE LONGUEUR NORME IDENTIFIANT VIRGULE IDENTIFIANT NORME { perpendicular_seg $1 $6 $9 $14 $16 }  | IDENTIFIANT LA DROITE PARALLELE A identification_line PASSANT PAR IDENTIFIANT
87  | IDENTIFIANT LA MEDIATRICE DE identification_line { perpendicular_bissector $1 $5 }          { parallel $1 $6 $9 }
88  | IDENTIFIANT LA BISSECTRICE DE IDENTIFIANT VIRGULE IDENTIFIANT VIRGULE IDENTIFIANT { bissecting $1 $5 $7 $9 }  | IDENTIFIANT LE SEGMENT PARALLELE A identification_line PASSANT PAR IDENTIFIANT ET DE LONGUEUR NORME IDENTIFIANT VIRGULE IDENTIFIANT NORME
89            { parallel_seg $1 $6 $9 $14 $16 }
90    | IDENTIFIANT LA DROITE PERPENDICULAIRE A identification_line PASSANT PAR IDENTIFIANT
91            { perpendicular $1 $6 $9 }
92    | IDENTIFIANT LE SEGMENT PERPENDICULAIRE A identification_line PASSANT PAR IDENTIFIANT ET DE LONGUEUR NORME IDENTIFIANT VIRGULE IDENTIFIANT NORME
93            { perpendicular_seg $1 $6 $9 $14 $16 }
94    | IDENTIFIANT LA MEDIATRICE DE identification_line
95            { perpendicular_bissector $1 $5 }
96    | IDENTIFIANT LA BISSECTRICE DE IDENTIFIANT VIRGULE IDENTIFIANT VIRGULE IDENTIFIANT
97            { bissecting $1 $5 $7 $9 }
98  ;  ;
99    
100  declaration_line2:  declaration_line2:
101    LA DROITE PARENT_OUV IDENTIFIANT VIRGULE IDENTIFIANT PARENT_FER { line ("("^$4^","^$6^")") $4 $6 }    LA DROITE PARENT_OUV IDENTIFIANT VIRGULE IDENTIFIANT PARENT_FER
102  | LE SEGMENT CROCHET_OUV IDENTIFIANT VIRGULE IDENTIFIANT CROCHET_FER { segment ("["^$4^","^$6^"]") $4 $6 }          { line ("("^$4^","^$6^")") $4 $6 }
103    | LE SEGMENT CROCHET_OUV IDENTIFIANT VIRGULE IDENTIFIANT CROCHET_FER
104            { segment ("["^$4^","^$6^"]") $4 $6 }
105  ;  ;
106    
107  identification_line:  identification_line:
108    IDENTIFIANT { $1 }    IDENTIFIANT { $1 }
109  | PARENT_OUV IDENTIFIANT VIRGULE IDENTIFIANT PARENT_FER { ("("^$2^","^$4^")") }  | PARENT_OUV IDENTIFIANT VIRGULE IDENTIFIANT PARENT_FER
110  | CROCHET_OUV IDENTIFIANT VIRGULE IDENTIFIANT CROCHET_FER { ("["^$2^","^$4^"]") }          { ("("^$2^","^$4^")") }
111    | CROCHET_OUV IDENTIFIANT VIRGULE IDENTIFIANT CROCHET_FER
112            { ("["^$2^","^$4^"]") }
113    | CROCHET_OUV IDENTIFIANT IDENTIFIANT CROCHET_FER
114            { ("["^$2^","^$3^"]") }
115  ;  ;
116    
117  declaration_circle:  declaration_circle:

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26