| expr
{ $1 }
| expr STAR tuple
- { C_prod ($1 :: (List.rev $3)) }
+ { C_tuple ($1 :: (List.rev $3)) }
| record
{ C_record (List.rev $1) }
| variant
| LPAREN expr RPAREN
{ $2 }
| LPAREN expr STAR tuple RPAREN
- { C_prod ($2 :: (List.rev $4)) }
+ { C_tuple ($2 :: (List.rev $4)) }
| expr OPTION
{ C_option $1 }
| expr LIST
constr:
| UIDENT
- { CD_prod ($1, []) }
+ { CD_tuple ($1, []) }
| UIDENT OF expr
- { CD_prod ($1, [ $3 ]) }
+ { CD_tuple ($1, [ $3 ]) }
| UIDENT OF expr STAR tuple
- { CD_prod ($1, ($3 :: (List.rev $5))) }
+ { CD_tuple ($1, ($3 :: (List.rev $5))) }
| C_option of complex_type
| C_list of complex_type
| C_array of complex_type
- | C_prod of complex_type list
+ | C_tuple of complex_type list
| C_record of (string * complex_type) list
| C_variant of constr_decl list
and constr_decl =
- | CD_prod of string * complex_type list
+ | CD_tuple of string * complex_type list
type type_defn = (string * complex_type) list