mirror of
https://github.com/CatalaLang/catala.git
synced 2024-09-19 16:28:12 +03:00
More parsing again
This commit is contained in:
parent
1475c98ea4
commit
681b1f76ae
@ -63,15 +63,20 @@ let rec lex_code lexbuf =
|
||||
| "tel" -> update_and_acc lexbuf; SUCH
|
||||
| "que" -> update_and_acc lexbuf; THAT
|
||||
| "maintenant" -> update_and_acc lexbuf; NOW
|
||||
| "et" -> update_and_acc lexbuf; AND
|
||||
| "ou" -> update_and_acc lexbuf; OR
|
||||
| '!' -> update_and_acc lexbuf; BANG
|
||||
| '<' -> update_and_acc lexbuf; LESSER
|
||||
| '>' -> update_and_acc lexbuf; GREATER
|
||||
| '(' -> update_and_acc lexbuf; LPAREN
|
||||
| ')' -> update_and_acc lexbuf; RPAREN
|
||||
| ';' -> update_and_acc lexbuf; SEMICOLON
|
||||
| ':' -> update_and_acc lexbuf; COLON
|
||||
| '.' -> update_and_acc lexbuf; DOT
|
||||
| "--" -> update_and_acc lexbuf; ALT
|
||||
| uppercase , Star (uppercase | lowercase) ->
|
||||
update_and_acc lexbuf; CONSTRUCTOR (Sedlexing.Utf8.lexeme buf)
|
||||
| lowercase , Star (lowercase | '_' | '\'') ->
|
||||
| lowercase , Star (lowercase | uppercase | '0' .. '9' | '_' | '\'') ->
|
||||
update_and_acc lexbuf; IDENT (Sedlexing.Utf8.lexeme buf)
|
||||
| _ -> raise_ParseError lexbuf
|
||||
|
||||
|
@ -30,8 +30,8 @@
|
||||
%token COLON ALT DOT SITUATION SOURCE DATA
|
||||
%token OF SEMICOLON INTEGER TYPE COLLECTION
|
||||
%token RULE CONDITION CONSEQUENCE DEFINED AS
|
||||
%token EXISTS IN SUCH THAT NOW LESSER
|
||||
%token BANG
|
||||
%token EXISTS IN SUCH THAT NOW LESSER GREATER
|
||||
%token BANG AND OR LPAREN RPAREN
|
||||
|
||||
%type <Ast.source_file> source_file
|
||||
|
||||
@ -68,18 +68,31 @@ primitive_expression:
|
||||
|
||||
compare_op:
|
||||
| LESSER {}
|
||||
| GREATER {}
|
||||
|
||||
sum_expression:
|
||||
base_expression:
|
||||
| primitive_expression {}
|
||||
| qident {}
|
||||
| LPAREN expression RPAREN {}
|
||||
|
||||
sum_expression:
|
||||
| base_expression {}
|
||||
|
||||
logical_op:
|
||||
| AND {}
|
||||
| OR {}
|
||||
|
||||
compare_expression:
|
||||
| sum_expression {}
|
||||
| sum_expression compare_op sum_expression {}
|
||||
|
||||
logical_expression:
|
||||
| compare_expression {}
|
||||
| compare_expression logical_op compare_expression {}
|
||||
|
||||
expression:
|
||||
| EXISTS IDENT IN qident SUCH THAT expression {}
|
||||
| compare_expression {}
|
||||
| logical_expression {}
|
||||
|
||||
condition:
|
||||
| CONDITION expression CONSEQUENCE {}
|
||||
|
@ -45,7 +45,31 @@ situation ContextePrestationsFamiliales source loi :
|
||||
consequence droits_ouverts defini.
|
||||
*/
|
||||
2°) après la fin de l'obligation scolaire, et jusqu'à un âge limite, tout enfant dont la rémunération éventuelle n'excède pas un plafond.
|
||||
/*
|
||||
situation ContextePrestationsFamiliales source loi :
|
||||
donnee age_limite_L512_3_2 de type entier ;
|
||||
donnee plafond_remuneration_L512_3_2 de type montant.
|
||||
|
||||
situation EnfantPrestationsFamiliales source loi :
|
||||
donnee age de type entier ;
|
||||
donnee remuneration de type montant ;
|
||||
donnee qualifie_pour_prestation_sauf_age ;
|
||||
regle condition
|
||||
maintenant > fin_obligation_scolaire et
|
||||
remuneration < plafond_remuneration_L512_3_2
|
||||
consequence qualifie_pour_prestation_sauf_age defini ;
|
||||
donnee enfant_qualifie_pour_prestation ;
|
||||
regle condition
|
||||
qualifie_pour_prestation_sauf_age et
|
||||
age < age_limite_L512_3_2
|
||||
consequence qualifie_pour_prestation defini.
|
||||
|
||||
situation ContextePrestationsFamiliales source loi :
|
||||
regle condition
|
||||
existe enfant dans enfants tel que
|
||||
enfant!qualifie_pour_prestation
|
||||
consequence droits_ouverts defini.
|
||||
*/
|
||||
Toutefois, pour l'attribution du complément familial et de l'allocation de logement mentionnés aux 3° et 4° de l'article L. 511-1, l'âge limite peut être différent de celui mentionné au 2° du présent article.
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user