Alain Frisch
|
dd200d9553
|
Allow the method body to be represented by a non Pexp_poly expression in the Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13530 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-15 17:26:32 +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
|
57f1133e0a
|
Represent the closed flag of Ptyp_variant using closed_flag instead of bool, and start documenting the Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13517 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-12 16:08:52 +00:00 |
Alain Frisch
|
04de43bee5
|
Attributes on Pstr_eval.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13512 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-11 14:07:32 +00:00 |
Alain Frisch
|
92ad47d47b
|
Keep item attributes on let-binding structure items.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13511 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-11 13:52:06 +00:00 |
Alain Frisch
|
3a5b7fe6b4
|
Convenience functions to build AST + implicit location.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13508 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-11 12:50:38 +00:00 |
Alain Frisch
|
a929cdb339
|
Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13503 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 18:00:11 +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
|
580bb34579
|
Renaming pcstr_pat -> pcstr_self, cstr_pat -> cstr_self.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13496 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-04-10 09:35:09 +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
|
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
|
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
|
c2c5b10685
|
Align module type binding with Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13448 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-26 08:21:29 +00:00 |
Alain Frisch
|
2ffa26af82
|
Align module binding with Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13447 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-26 08:09:26 +00:00 |
Alain Frisch
|
77d3fce857
|
Align exception_declaration with Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13446 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 18:42:45 +00:00 |
Alain Frisch
|
f4ca2da467
|
Align type_declaration with parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13445 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 18:20:11 +00:00 |
Alain Frisch
|
25815e6e77
|
Align typed value_declaration with parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13444 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 18:04:40 +00:00 |
Alain Frisch
|
fbde1f7e52
|
Align module and module type declarations between Parsetree and Typedtree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13443 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 17:47:28 +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
|
dd61fb5e55
|
Represent label and constructor declarations as records in the typedtree. Also keep return type for GADT constructors.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13441 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 14:56:56 +00:00 |
Alain Frisch
|
5c98dd91fe
|
Starting to keep attributes in the typedtree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13440 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-25 14:16:07 +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
|
97c5f1a253
|
Attributes on label in record type declarations.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13361 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 13:51:18 +00:00 |
Alain Frisch
|
d50038cae7
|
Attribute has structure/signature item.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 12:27:32 +00:00 |
Alain Frisch
|
2cf65c8c85
|
Record for module type declarations.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13358 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 12:14:02 +00:00 |
Alain Frisch
|
24a0c6eb0e
|
Name is part of the value_description record.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13357 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 12:00:18 +00:00 |
Alain Frisch
|
241abe55e6
|
Type name is part of the type declaration record.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13356 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 11:47:59 +00:00 |
Alain Frisch
|
59bdf321d3
|
Switch Pstr_modtype argument to a record type.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13355 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 10:49:44 +00:00 |
Alain Frisch
|
d32b19008a
|
Parse recursive module as standard modules, and check in the type-checker that an explicit type is provided. (Unfinished.)
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13353 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-05 16:50:05 +00:00 |
Alain Frisch
|
cc70961d4f
|
Support item attributes on exn rebind.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13351 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-05 12:44:40 +00:00 |
Alain Frisch
|
b01b7305bd
|
Put name in the exception_declaration record.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13350 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-05 12:37:17 +00:00 |
Alain Frisch
|
db579b0a1e
|
Extension as structure/signature items [%%lid expr].
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13346 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-05 11:46:25 +00:00 |
Alain Frisch
|
8461db39f1
|
Attributes on module/module type/recursive module declarations in interfaces.
Module:
[^^id expr] [^^id expr] ...
module X : S
[@@id expr] [@@id expr] ...
Module types:
[^^id expr] [^^id expr] ...
module type X = S
[@@id expr] [@@id expr] ...
Recursive modules:
module rec [^^id expr] [^^id expr] X1 : S1 [@@id expr] [@@id expr] ...
and [^^id expr] [^^id expr] X1 : S1 [@@id expr] [@@id expr] ...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13344 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 17:39:07 +00:00 |
Alain Frisch
|
a5059464fe
|
Attributes on open/include in signatures.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13343 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 16:36:32 +00:00 |
Alain Frisch
|
46c790a663
|
Attributes on exception declarations.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13342 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 16:20:49 +00:00 |
Alain Frisch
|
5f0aead005
|
Adding attributes on constructor declarations (type t = A [@id expr] | B [@id expr] of ...), and switch to a record type to represent those constructor declarations in the Parsetree.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 15:35:47 +00:00 |
Alain Frisch
|
be76a15a6b
|
Attributes/extensions as module types.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13336 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 14:11:15 +00:00 |
Alain Frisch
|
a2acbc8d3b
|
Adding extension/attribute on patterns.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13335 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 13:52:23 +00:00 |
Alain Frisch
|
e58b2cd036
|
Continue.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13333 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-04 12:54:57 +00:00 |
Alain Frisch
|
c8d3ff52a2
|
Cleanup + support attributes on type declarations (syntax: type t = ... with (:a1 expr1) (:a2 expr2) ... (:an exprn)).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13332 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-01 12:44:04 +00:00 |
Alain Frisch
|
152255e512
|
First version with attributes and extensions on expressions, type expressions and structure items.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-02-28 16:51:59 +00:00 |
Jacques Garrigue
|
1f5882e53d
|
Replace error by warning for PR#5835
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13298 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-02-19 03:12:36 +00:00 |
Jacques Garrigue
|
c76b791ca4
|
Add warning 42 for disambiguated labels and constructors (compatibility with old versions)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13297 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-02-19 02:45:09 +00:00 |