Commit Graph

30 Commits (ee8f71101b80496b2ec2c996d29ac33bbaf7cf00)

Author SHA1 Message Date
Damien Doligez 7303ac34ca fix some of the whitespace problems in the source
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14582 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-04-12 10:17:02 +00:00
Gabriel Scherer d22b112968 ocamllex: user-definable refill actions (patch by Frédéric Bour)
The patch introduces a new "refill" action. It's optional and if
unused the lexer specification and behavior are unchanged.

When specified, it allows the user to control the way the lexer is
refilled. For example, an appropriate refill handler could perform the
blocking operations of refilling under a concurrency monad such as Lwt
or Async, to work better in a cooperative concurrency setting.

To make use of this feature, add

  refill {refill_function}

between the header and the first rule.

[refill_function] is a function which will be invoked by the lexer
immediately before refilling the buffer. The function will receive as
arguments the continuation to invoke to resume the lexing, and the
current lexing buffer.

More precisely, it's a function of type:

  (Lexing.lexbuf -> 'a) -> Lexing.lexbuf -> 'a

where the first argument is the continuation which captures the
processing ocamllex would usually perform (refilling the buffer, then
calling the lexing function again), and the result type ['a] should
unify with the result types of all rules.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14461 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-14 15:39:32 +00:00
Damien Doligez 7844495624 Merge branch 4.01 from branching point to 4.01.0+rc1
Command line used:
  svn merge --accept postpone -r 13776:14055 $REPO/version/4.01 .


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14060 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-04 15:12:37 +00:00
Damien Doligez c63f9e0957 fix a few problems with whitespace and over-long lines
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13393 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-09 22:38:52 +00:00
Damien Doligez def31744f9 remove all $Id keywords
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13013 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-15 17:50:56 +00:00
Damien Doligez 3b507dd1aa renaming of Objective Caml to OCaml and cleanup of copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11156 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-27 14:17:02 +00:00
Luc Maranget 8ca6c7da61 PR #0004976, fixed.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10271 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-19 12:25:06 +00:00
Luc Maranget 5ca2e4ee42 ocamllex: as bound variables with position in .mll file
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7815 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-01-29 16:44:16 +00:00
Damien Doligez 74f1b4a576 PR#4107 better error message
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7602 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-09-12 10:36:50 +00:00
Damien Doligez 125ea40d4c fusion 3.09.0 -> 3.09.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-04 16:55:50 +00:00
Luc Maranget 5040085fe2 character set difference
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6269 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-04-29 11:12:49 +00:00
Damien Doligez 3a9e049fca suppression d'une fonction inutilisee
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5775 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2003-08-13 13:36:03 +00:00
Luc Maranget c0272e43ba bug 1554
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5398 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2003-02-24 10:59:20 +00:00
Luc Maranget 11392c1894 arguments supplementaires pour les lexers ocamllex
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5323 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-12-09 10:44:46 +00:00
Luc Maranget ebf4e7d266 better expansion of +
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5199 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-10-29 16:23:37 +00:00
Luc Maranget fe1be91a8a oups
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-10-29 13:29:04 +00:00
Luc Maranget c417b82d9e nouveau ocamllex
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5193 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-10-28 16:46:50 +00:00
Damien Doligez dd16fa34f9 suppression des conflits
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4714 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-04-22 10:06:01 +00:00
Daniel de Rauglaudre 72f429f49e Généralisation de certains types afin que les fichiers cmo puissent être
utilisés dans l'extension de syntaxe pa_ocamllex.ml d'Alain Frisch. Ajouté
syntax.ml, copie de syntax.mli, pour pa_ocamllex.ml (problème avec Dynlink,
mais qui pourra être résolu un jour peut-être).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4218 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-01-04 10:01:50 +00:00
Xavier Leroy cc0f32b054 Changement de la licence
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2553 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-17 18:59:06 +00:00
Xavier Leroy 56fafddd87 Generation de messages # lineno
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1930 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-04-23 08:24:50 +00:00
Xavier Leroy 1147c3d20d Ajout des regexp nommees (let name = regexp) dans ocamllex
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1910 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-04-07 12:50:19 +00:00
Damien Doligez 03ec746bf1 deTABisation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1563 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-05-19 15:42:21 +00:00
Damien Doligez bc679705e6 Fix pour que les lexeurs d'ocamllex sachent traiter le '\000'.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1501 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-04-15 19:18:03 +00:00
Damien Doligez 30f1bdfd9e "|" optionnel devant la première production
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@960 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-05 17:36:14 +00:00
Xavier Leroy 2301d778e7 Renommage en Objective Caml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-30 14:53:58 +00:00
Jérôme Vouillon 7974a9d8b1 Extension objets.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-22 11:15:41 +00:00
Xavier Leroy e0adbdd1f4 Ajout d'un trailer dans les fichiers .mll.
Nettoyages.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@224 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-25 13:54:14 +00:00
Xavier Leroy e4066357b1 Ajout des notices de copyright
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-09 15:06:35 +00:00
Xavier Leroy 61bd8ace6b Passage a la version bootstrappee (franchissement du Rubicon)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-04 10:15:53 +00:00