Alain Frisch
|
8106136bb3
|
Doc.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14611 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2014-04-16 12:40:24 +00:00 |
Alain Frisch
|
984814d6a1
|
Support for the let%foo syntax as structure item.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14600 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2014-04-15 11:40:13 +00:00 |
Alain Frisch
|
f31ba39923
|
Custom syntax for floating attributes: [@@@id].
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14588 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2014-04-14 14:42:41 +00:00 |
Alain Frisch
|
411eb41b42
|
Allow an optional 'when' clause after a pattern payload.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13920 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-07-22 15:15:07 +00:00 |
Alain Frisch
|
87d9d6c877
|
More explicit internal representation of attribute payload. Now also support patterns as payload [%id ? pat].
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13919 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-07-22 14:58:15 +00:00 |
Alain Frisch
|
8df2057b46
|
Special syntax when the payload of attribute/extension is a single type expression: [@id : T], [%id : T]. Represented internally as (() : T).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13918 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-07-22 14:04:28 +00:00 |
Alain Frisch
|
2e199ef1f2
|
Item attributes on each let-binding.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-06-03 15:14:19 +00:00 |
Alain Frisch
|
eb4130e47c
|
The arument of attributes and extension nodes is now a structure, which is syntactically more general than an expression (through the embedding E -> [Pexp_eval E]).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-19 07:40:57 +00:00 |
Alain Frisch
|
67912da346
|
Allow abstract module declaration in structures to make the syntax and Parsetree more uniform.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-18 13:14:53 +00:00 |
Alain Frisch
|
84147074f9
|
Split Pexp_constraint into Pexp_coerce/Pexp_constraint.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13552 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-17 12:23:44 +00:00 |
Alain Frisch
|
d2171a98d8
|
Split Pexp_function into Pexp_function/Pexp_fun.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-17 11:43:29 +00:00 |
Alain Frisch
|
b36ec9f764
|
Get rid of the 'explicit arity' flag on Pexp_construct/Ppat_construct. If really requires (for camlp5?), the feature should be reimplemented with attributes.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13549 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-17 09:46:52 +00:00 |
Alain Frisch
|
501dfd2b5e
|
Getting rid of Pexp_assertfalse/Texp_assertfalse.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-17 09:18:03 +00:00 |
Alain Frisch
|
088de517d8
|
Keep interval pattern sugar in the Parsetree (Camlp4 parsers still expand them).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13546 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-16 15:34:09 +00:00 |
Alain Frisch
|
158bc9c9e3
|
Get rid of the undocumented syntax #c[>`A] (#5936, #5983).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13542 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-16 12:17:17 +00:00 |
Alain Frisch
|
3fe10139ab
|
Better representation of with-constraints.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-16 10:47:45 +00:00 |
Alain Frisch
|
bfc9a8f9e1
|
Get rid of the location argument on pci_params, and improve location of error messages.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13534 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-16 07:51:27 +00:00 |
Alain Frisch
|
e7736899fb
|
Explicit representation of guards, get rid of Pexp_when.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13528 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-15 16:23:22 +00:00 |
Alain Frisch
|
aa4087c443
|
TODOs.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13504 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 18:06:40 +00:00 |
Alain Frisch
|
90bbd25948
|
Extension nodes as class field or class type field.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13502 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 17:54:54 +00:00 |
Alain Frisch
|
6e36fd566b
|
Extension nodes and attributes for class types.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13501 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 17:44:15 +00:00 |
Alain Frisch
|
ee5f754a42
|
Attributes and extension points in class_expr.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13500 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 17:26:55 +00:00 |
Alain Frisch
|
e2036c5a22
|
Start to bring constructor names closer to concrete syntax.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13497 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 11:17:41 +00:00 |
Alain Frisch
|
71787e0228
|
Support dot-separated attributes for extensions and attributes.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13495 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 09:22:54 +00:00 |
Alain Frisch
|
ec9dacb3f1
|
Support for attributes on class type fields.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13494 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 09:17:22 +00:00 |
Alain Frisch
|
d84ae41182
|
Item attributes on class fields.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13493 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-09 15:54:41 +00:00 |
Alain Frisch
|
3df9fa2762
|
Doc.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13492 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-09 14:12:27 +00:00 |
Alain Frisch
|
d1751e4738
|
Allow to not have empty Ptyp_poly node in the Parsetree (the type-checker insert them automatically).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13491 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-09 14:10:54 +00:00 |
Alain Frisch
|
1eb1ec4c40
|
Get rid of core_field_type, more direct representation of object types.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13489 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-09 13:29:00 +00:00 |
Alain Frisch
|
47a3ee095e
|
Get rid of the Default case in Asttype.rec_flag.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13481 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-04 12:38:20 +00:00 |
Alain Frisch
|
27d523ea72
|
Better representation of variance in the Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13474 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-02 15:33:35 +00:00 |
Alain Frisch
|
bc0e2064fa
|
Done TODOs.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13472 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-02 12:40:58 +00:00 |
Alain Frisch
|
ec5a284b0a
|
Adding a 'cass' example, combining extension node and quoted string.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13453 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-26 12:38:23 +00:00 |
Alain Frisch
|
1dd5243b54
|
Document changes to the Typedtree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13451 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-26 11:19:36 +00:00 |
Alain Frisch
|
6bfcb1da5b
|
Support for quoted strings.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-26 11:17:17 +00:00 |
Alain Frisch
|
0b9347f482
|
Represent exception declarations as constructor declarations in the Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13442 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 15:49:10 +00:00 |
Alain Frisch
|
f85f1e2759
|
Get rid of alternative syntax for '(module...)'.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-22 11:30:28 +00:00 |
Alain Frisch
|
b9ad592ac0
|
Infix syntax for attributes/extension nodes restricted to expression constructions starting with a (combination of) keywords.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13419 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-22 11:25:52 +00:00 |
Alain Frisch
|
734a4b6816
|
Fix example.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13418 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-21 08:53:42 +00:00 |
Alain Frisch
|
b0987fd693
|
Attributes on expresions (etc) are now stored in the expression record, to facilitate pattern matching on structured fragments of AST while ignoring attributes. Introducing a new Ast_helper module to help creating AST fragments.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13381 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-08 14:59:45 +00:00 |
Alain Frisch
|
556d070fdb
|
Adapt examples.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13380 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-08 09:36:55 +00:00 |
Alain Frisch
|
7c4129960b
|
Adapt examples.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13379 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-08 09:34:02 +00:00 |
Alain Frisch
|
a483bbaaf4
|
Experimenting with alternative syntax for extension nodes (as an annotation on the opening keyword/delimiter).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13378 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-08 09:17:30 +00:00 |
Alain Frisch
|
ab2a491ba0
|
Support attributes on opening delimiter/keyword for all kinds of expressions.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13377 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-08 08:42:53 +00:00 |
Alain Frisch
|
a9148b249e
|
Typo.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13375 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 15:33:13 +00:00 |
Alain Frisch
|
cbf93255c5
|
Doc.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13374 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 15:29:30 +00:00 |
Alain Frisch
|
07e81b2f0d
|
Examples. Also accept uppercase idents (and some keywords) as ids for attributes/extension nodes.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13373 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 15:29:11 +00:00 |
Alain Frisch
|
eaf9e3744a
|
It is now possible to start a signature or a structure with a ';;' token and to have two successive ';;' tokens.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13372 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 14:15:23 +00:00 |
Alain Frisch
|
72a638757c
|
Stand-alone ("floating") sig_item/str_item attributes now use the
standard syntax for item attributes. They are recognized at the
beginning of the signature/structure and after a ";;" token.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13371 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 13:46:44 +00:00 |
Alain Frisch
|
63b229658e
|
Remove prefix syntax for attributes.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13368 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-07 13:00:01 +00:00 |