Permalink
Browse files

Added an option to align function parameters under the function inste…

…ad of indenting them
  • Loading branch information...
1 parent 339d3f7 commit e0bea4e98f531a22125e5e1912e09bd523581018 @AltGr AltGr committed Mar 13, 2013
View
8 src/indentBlock.ml
@@ -463,10 +463,14 @@ let rec update_path config t stream tok =
| Some({k=KExpr i}::_ as p) when i = prio_apply -> p
| Some({k=KExpr _; line}
:: {k=KArrow (KMatch|KTry); line=arrow_line}::_ as p)
- when line = arrow_line ->
+ when config.i_align_params = Auto
+ && line = arrow_line ->
(* Special case: switch to token-aligned (see test js-args) *)
extend (KExpr prio_apply) T p
- | Some p -> extend (KExpr prio_apply) L p
+ | Some p ->
+ extend (KExpr prio_apply)
+ (if config.i_align_params = Always then T else L)
+ p
| None -> assert false
in
p
View
30 src/indentConfig.ml
@@ -25,6 +25,7 @@ type t = {
i_strict_with: threechoices;
i_match_clause: int;
i_strict_comments: bool;
+ i_align_params: threechoices;
}
let default = {
@@ -35,19 +36,22 @@ let default = {
i_strict_with = Never;
i_match_clause = 2;
i_strict_comments = false;
+ i_align_params = Auto;
}
let presets = [
"apprentice",
{ i_base = 2; i_type = 4; i_in = 2;
i_with = 2; i_strict_with = Never; i_match_clause = 4;
- i_strict_comments = false };
+ i_strict_comments = false;
+ i_align_params = Always };
"normal",
default;
"JaneStreet",
{ i_base = 2; i_type = 2; i_in = 0;
i_with = 0; i_strict_with = Always; i_match_clause = 2;
- i_strict_comments = true };
+ i_strict_comments = true;
+ i_align_params = Always };
]
let threechoices_of_string = function
@@ -73,6 +77,7 @@ let set t var_name value =
{t with i_strict_with = if bool_of_string value then Always else Never}
| "match_clause" -> {t with i_match_clause = int_of_string value}
| "strict_comments" -> {t with i_strict_comments = bool_of_string value}
+ | "align_params" -> {t with i_align_params = threechoices_of_string value}
| _ -> raise (Invalid_argument var_name)
with
| Failure "int_of_string" ->
@@ -108,17 +113,23 @@ let help =
"Config syntax: <var>=<value>[,<var>=<value>...] or <preset>[,...]\n\
\n\
Indent configuration variables:\n\
- \ [variable] [default] [help]\n\
+ \n\
+ \ [variable] [default] [help]\n\
\ base %3d base indent\n\
\ type %3d indent of type definitions\n\
\ in %3d indent after 'let in'\n\
\ with %3d indent of match cases (before '|')\n\
- \ strict_with %-6s don't override 'with' when the match doesn't\n\
- \ start a line \
- (either 'always', 'never' or 'auto')\n\
+ \ strict_with % 6s%, don't override 'with' when the match doesn't \
+ start a \n\
+ \ line (either 'always', 'never' or 'auto')\n\
\ match_clause %3d indent inside match cases (after '->')\n\
- \ strict_comments %-5b if true, don't preserve indentation\
+ \ strict_comments % 6s%, if true, don't preserve indentation \
inside comments\n\
+ \ align_params % 6s%, align function parameters below the function\n\
+ \ instead of just indenting them one level \
+ further\n\
+ \ (if 'auto' do so only if just after \
+ a match arrow)\n\
\n\
Available configuration presets:%s\n\
\n\
@@ -129,8 +140,9 @@ let help =
default.i_with
(string_of_threechoices default.i_strict_with)
default.i_match_clause
- default.i_strict_comments
- (List.fold_left (fun s (name,_) -> s ^ " " ^ name) "" presets)
+ (string_of_bool default.i_strict_comments)
+ (string_of_threechoices default.i_align_params)
+ (String.concat ", " (List.map fst presets))
let default =
try
View
93 src/indentConfig.mli
@@ -1,6 +1,5 @@
(**************************************************************************)
(* *)
-(* Copyright 2011 Jun Furuse *)
(* Copyright 2013 OCamlPro *)
(* *)
(* All rights reserved. This file is distributed under the terms of *)
@@ -16,53 +15,69 @@
type threechoices = Always | Never | Auto
type t = {
- (* number of spaces used in all base cases, for example: {[
- let foo =
- ^^bar
- ]}
- default 2 *)
+ (** number of spaces used in all base cases, for example: {[
+ let foo =
+ ^^bar
+ ]}
+ default 2 *)
i_base: int;
- (* indent for type definitions: {[
- type t =
- ^^int
- ]}
- default 2 *)
+ (** indent for type definitions: {[
+ type t =
+ ^^int
+ ]}
+ default 2 *)
i_type: int;
- (* indent after [let in], unless followed by another [let]: {[
- let foo = () in
- ^^bar
- ]}
- default 0; beginners may prefer 2. *)
+ (** indent after [let in], unless followed by another [let]: {[
+ let foo = () in
+ ^^bar
+ ]}
+ default 0; beginners may prefer 2. *)
i_in: int;
- (* indent after [match/try with] or [function]: {[
- match foo with
- ^^| _ -> bar
- ]}
- default 0 *)
+ (** indent after [match/try with] or [function]: {[
+ match foo with
+ ^^| _ -> bar
+ ]}
+ default 0 *)
i_with: int;
- (* if [Never], match bars will be indented, superseding [i_with],
- whenever [match with] doesn't start its line. If [Auto], there are
- exceptions for constructs like [begin match with]. If [Never],
- [i_with] is always strictly respected.
- Eg, with [Never] and [i_with=0]:
- {[
- begin match foo with
- ^^| _ -> bar
- end
+ (** if [Never], match bars will be indented, superseding [i_with],
+ whenever [match with] doesn't start its line. If [Auto], there are
+ exceptions for constructs like [begin match with]. If [Never],
+ [i_with] is always strictly respected.
+ Eg, with [Never] and [i_with=0]: {[
+ begin match foo with
+ ^^| _ -> bar
+ end
]}
default is [Never] *)
i_strict_with: threechoices;
- (* indent for clauses inside a pattern-match: {[
- match foo with
- | _ ->
- ^^^^bar
- ]}
- default 2, which aligns the pattern and the expression *)
+ (** indent for clauses inside a pattern-match: {[
+ match foo with
+ | _ ->
+ ^^^^bar
+ ]}
+ default 2, which aligns the pattern and the expression *)
i_match_clause: int;
- (* if [false], indentation within comments will be preserved. If [true],
- their contents are forcefully aligned.
- default false *)
+ (** if [false], indentation within comments is preserved. If [true],
+ their contents are aligned with the first line. Lines starting with [*]
+ are always aligned.
+ default [false] *)
i_strict_comments: bool;
+ (** if [Never], function parameters are indented one level from the function.
+ if [Always], they are aligned relative to the function.
+ if [Auto], alignment is chosen over indentation in a few cases, e.g. after
+ match arrows.
+ For example, with [Auto] or [Always], you'll get: {[
+ match foo with
+ | _ -> some_fun
+ ^^parameter
+ ]}
+ While [Never] would yield: {[
+ match foo with
+ | _ -> some_fun
+ ^^parameter
+ ]}
+ default [Auto] *)
+ i_align_params: threechoices;
}
val help: string
View
10 tests/failing-output/js-args.ml
@@ -12,7 +12,7 @@ let should_check_can_sell_and_marking regulatory_regime =
(* CR pszilagyi: What would you say about this one: *)
let f = fun x -> ghi
- x
+ x
let x =
try x with a -> b
@@ -55,13 +55,13 @@ let () =
let () =
raise (Bug ("foo"
- (* In this and similar cases, we want the subsequent lines to
- align with the first expression. *)
- ^ "bar"))
+ (* In this and similar cases, we want the subsequent lines to
+ align with the first expression. *)
+ ^ "bar"))
(* Except in specific cases, we want the argument indented relative to the
function being called. (Exceptions include "fun" arguments where the line
ends with "->" and subsequent lines beginning with operators, like above.) *)
let () =
Some (Message_store.create s
- "herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)
+ "herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)
View
22 tests/failing-output/js-functor.ml
@@ -1,22 +0,0 @@
-module M =
- F (G)
- (H) (* OK, line up the functor args *)
-
-module M =
- F
- (G)
- (H)
-
-(* CR pszilagyi: To me, this looks fine as it is. The rule seems fine as "indent
- arguments by 2". To illustrate, with a case where the functor name is longer: *)
-module M =
- Functor (G)
- (H)
- (I)
-
-(* CR pszilagyi: That is pretty awful. We really want this? Let's at least discourage
- the F style for multi-argument functors? *)
-include F(struct
- let blah _
- end)
- (G)
View
20 tests/failing-output/js-let.ml
@@ -1,20 +0,0 @@
-let foo
- some very long arguments that we break onto the next line
- =
- bar ();
- baz
-
-(* The picture shows where we want the `=' to be. However, Tuareg currently moves it over
- to line up with the arguments.
-
- Perhaps this is merely a personal preference, but that seems ugly to me.
-
- pszilagyi: It's consistent with other infix operators (although this is syntax) for it
- to be where you prefer. *)
-
-let foo arguments
- = bar
-
-let foo
- arguments
- = bar
View
434 tests/failing.html
@@ -2,7 +2,7 @@
"http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
- <title>Failing tests, ocp-indent version 1.0.1+50 (2013-03-13)</title>
+ <title>Failing tests, ocp-indent version 1.0.1+51 (2013-03-13)</title>
<style>
BODY { font-family: monospace; }
TABLE { border-collapse: collapse; border-spacing: 0px; margin: auto; }
@@ -22,14 +22,14 @@
</style>
</head>
<body>
-<h1>Failing tests, ocp-indent version 1.0.1+50 (2013-03-13)</h1>
+<h1>Failing tests, ocp-indent version 1.0.1+51 (2013-03-13)</h1>
<p>Left is expected result, right shows actual indentation by ocp-indent</p>
<table>
<tr><td width="70%">
<table>
<tr>
<td class="modified">Modified line(s):&nbsp;</td>
- <td class="modified"><a href='#failing/js-args.ml_15'>15</a>&nbsp; <a href='#failing/js-args.ml_58'>58</a>&nbsp; <a href='#failing/js-args.ml_59'>59</a>&nbsp; <a href='#failing/js-args.ml_60'>60</a>&nbsp; <a href='#failing/js-args.ml_67'>67</a>&nbsp; </td>
+ <td class="modified"><a href='#failing/js-args.ml_58'>58</a>&nbsp; <a href='#failing/js-args.ml_59'>59</a>&nbsp; <a href='#failing/js-args.ml_60'>60</a>&nbsp; </td>
</tr>
<tr>
<td class="added">Added line(s):&nbsp;</td>
@@ -69,8 +69,8 @@
<td width="16">&nbsp;</td>
<td>
67 lines<br/>
- 1277 bytes<br/>
- Last modified : 2013-03-13 16:32:10 <br>
+ 1311 bytes<br/>
+ Last modified : 2013-03-13 16:33:11 <br>
<hr/>
</td>
</tr>
@@ -172,12 +172,12 @@
<td class="linenum">14</td>
<td class="normal">let f = fun x -&gt; ghi</td>
</tr>
- <tr>
- <td class="linenum"><a name="failing/js-args.ml_15">15</a></td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x</td>
+ <tr>
+ <td class="linenum">15</td>
+ <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x</td>
<td width="16">&nbsp;</td>
<td class="linenum">15</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;x</td>
+ <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x</td>
</tr>
<tr>
<td class="linenum">16</td>
@@ -478,21 +478,21 @@
<td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(* In this and similar cases, we want the subsequent lines to</td>
<td width="16">&nbsp;</td>
<td class="linenum">58</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(* In this and similar cases, we want the subsequent lines to</td>
+ <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (* In this and similar cases, we want the subsequent lines to</td>
</tr>
<tr>
<td class="linenum"><a name="failing/js-args.ml_59">59</a></td>
<td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; align with the first expression. *)</td>
<td width="16">&nbsp;</td>
<td class="linenum">59</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; align with the first expression. *)</td>
+ <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;align with the first expression. *)</td>
</tr>
<tr>
<td class="linenum"><a name="failing/js-args.ml_60">60</a></td>
<td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ "bar"))</td>
<td width="16">&nbsp;</td>
<td class="linenum">60</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ "bar"))</td>
+ <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ^ "bar"))</td>
</tr>
<tr>
<td class="linenum">61</td>
@@ -536,415 +536,15 @@
<td class="linenum">66</td>
<td class="normal">&nbsp;&nbsp;Some (Message_store.create s</td>
</tr>
- <tr>
- <td class="linenum"><a name="failing/js-args.ml_67">67</a></td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">67</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)</td>
- </tr>
-</table>
-<hr/>
-<i>Generated by <b>diff2html</b> on 2013-03-13 16:32:12</i>
-<table>
-<tr><td width="70%">
-<table>
- <tr>
- <td class="modified">Modified line(s):&nbsp;</td>
- <td class="modified"><a href='#failing/js-functor.ml_20'>20</a>&nbsp; <a href='#failing/js-functor.ml_21'>21</a>&nbsp; <a href='#failing/js-functor.ml_22'>22</a>&nbsp; </td>
- </tr>
- <tr>
- <td class="added">Added line(s):&nbsp;</td>
- <td class="added">None </td>
- </tr>
- <tr>
- <td class="removed">Removed line(s):&nbsp;</td>
- <td class="removed">None </td>
- </tr>
-</table>
-</td>
-<td width="30%">
-<font size="-2"><i>Generated by <a href="http://kirk.webfinish.com"><b>diff2html</b></a><br>
-&copy; 2009 Kirk Roybal, WebFinish<br>
-Python version by: Yves Bailly, MandrakeSoft S.A. 2001<br>
-<b>diff2html</b> is licensed under the <a href="http://www.gnu.org/copyleft/gpl.html">GNU GPL</a>.</i></font>
-</td></tr>
-</table>
-<hr/>
-<table>
- <tr>
- <th>&nbsp;</th>
- <th width="45%"><strong><big>failing/js-functor.ml</big></strong></th>
- <th>&nbsp;</th>
- <th>&nbsp;</th>
- <th width="45%"><strong><big>failing-output/js-functor.ml</big></strong></th>
- </tr>
- <tr>
- <td width="16">&nbsp;</td>
- <td>
- 22 lines<br/>
- 504 bytes<br/>
- Last modified : 2013-03-13 16:31:13 <br>
- <hr/>
- </td>
- <td width="16">&nbsp;</td>
- <td width="16">&nbsp;</td>
- <td>
- 22 lines<br/>
- 486 bytes<br/>
- Last modified : 2013-03-13 16:32:10 <br>
- <hr/>
- </td>
- </tr>
- <tr>
- <td class="linenum">1</td>
- <td class="normal">module M =</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">1</td>
- <td class="normal">module M =</td>
- </tr>
- <tr>
- <td class="linenum">2</td>
- <td class="normal">&nbsp;&nbsp;F (G)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">2</td>
- <td class="normal">&nbsp;&nbsp;F (G)</td>
- </tr>
- <tr>
- <td class="linenum">3</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H) (* OK, line up the functor args *)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">3</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H) (* OK, line up the functor args *)</td>
- </tr>
- <tr>
- <td class="linenum">4</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">4</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">5</td>
- <td class="normal">module M =</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">5</td>
- <td class="normal">module M =</td>
- </tr>
<tr>
- <td class="linenum">6</td>
- <td class="normal">&nbsp;&nbsp;F</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">6</td>
- <td class="normal">&nbsp;&nbsp;F</td>
- </tr>
- <tr>
- <td class="linenum">7</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(G)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">7</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(G)</td>
- </tr>
- <tr>
- <td class="linenum">8</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">8</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H)</td>
- </tr>
- <tr>
- <td class="linenum">9</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">9</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">10</td>
- <td class="normal">(* CR pszilagyi: To me, this looks fine as it is.&nbsp;&nbsp;The rule seems fine as "indent</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">10</td>
- <td class="normal">(* CR pszilagyi: To me, this looks fine as it is.&nbsp;&nbsp;The rule seems fine as "indent</td>
- </tr>
- <tr>
- <td class="linenum">11</td>
- <td class="normal">&nbsp;&nbsp; arguments by 2".&nbsp;&nbsp;To illustrate, with a case where the functor name is longer: *)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">11</td>
- <td class="normal">&nbsp;&nbsp; arguments by 2".&nbsp;&nbsp;To illustrate, with a case where the functor name is longer: *)</td>
- </tr>
- <tr>
- <td class="linenum">12</td>
- <td class="normal">module M =</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">12</td>
- <td class="normal">module M =</td>
- </tr>
- <tr>
- <td class="linenum">13</td>
- <td class="normal">&nbsp;&nbsp;Functor (G)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">13</td>
- <td class="normal">&nbsp;&nbsp;Functor (G)</td>
- </tr>
- <tr>
- <td class="linenum">14</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">14</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(H)</td>
- </tr>
- <tr>
- <td class="linenum">15</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(I)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">15</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;(I)</td>
- </tr>
- <tr>
- <td class="linenum">16</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">16</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">17</td>
- <td class="normal">(* CR pszilagyi: That is pretty awful.&nbsp;&nbsp;We really want this?&nbsp;&nbsp;Let's at least discourage</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">17</td>
- <td class="normal">(* CR pszilagyi: That is pretty awful.&nbsp;&nbsp;We really want this?&nbsp;&nbsp;Let's at least discourage</td>
- </tr>
- <tr>
- <td class="linenum">18</td>
- <td class="normal">&nbsp;&nbsp; the F style for multi-argument functors? *)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">18</td>
- <td class="normal">&nbsp;&nbsp; the F style for multi-argument functors? *)</td>
- </tr>
- <tr>
- <td class="linenum">19</td>
- <td class="normal">include F(struct</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">19</td>
- <td class="normal">include F(struct</td>
- </tr>
- <tr>
- <td class="linenum"><a name="failing/js-functor.ml_20">20</a></td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let blah _</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">20</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;let blah _</td>
- </tr>
- <tr>
- <td class="linenum"><a name="failing/js-functor.ml_21">21</a></td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">21</td>
- <td class="modified">&nbsp;&nbsp;end)</td>
- </tr>
- <tr>
- <td class="linenum"><a name="failing/js-functor.ml_22">22</a></td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(G)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">22</td>
- <td class="modified">&nbsp;&nbsp;&nbsp;&nbsp;(G)</td>
- </tr>
-</table>
-<hr/>
-<i>Generated by <b>diff2html</b> on 2013-03-13 16:32:14</i>
-<table>
-<tr><td width="70%">
-<table>
- <tr>
- <td class="modified">Modified line(s):&nbsp;</td>
- <td class="modified"><a href='#failing/js-let.ml_19'>19</a>&nbsp; </td>
- </tr>
- <tr>
- <td class="added">Added line(s):&nbsp;</td>
- <td class="added">None </td>
- </tr>
- <tr>
- <td class="removed">Removed line(s):&nbsp;</td>
- <td class="removed">None </td>
- </tr>
-</table>
-</td>
-<td width="30%">
-<font size="-2"><i>Generated by <a href="http://kirk.webfinish.com"><b>diff2html</b></a><br>
-&copy; 2009 Kirk Roybal, WebFinish<br>
-Python version by: Yves Bailly, MandrakeSoft S.A. 2001<br>
-<b>diff2html</b> is licensed under the <a href="http://www.gnu.org/copyleft/gpl.html">GNU GPL</a>.</i></font>
-</td></tr>
-</table>
-<hr/>
-<table>
- <tr>
- <th>&nbsp;</th>
- <th width="45%"><strong><big>failing/js-let.ml</big></strong></th>
- <th>&nbsp;</th>
- <th>&nbsp;</th>
- <th width="45%"><strong><big>failing-output/js-let.ml</big></strong></th>
- </tr>
- <tr>
- <td width="16">&nbsp;</td>
- <td>
- 20 lines<br/>
- 474 bytes<br/>
- Last modified : 2013-03-13 16:31:13 <br>
- <hr/>
- </td>
- <td width="16">&nbsp;</td>
- <td width="16">&nbsp;</td>
- <td>
- 20 lines<br/>
- 472 bytes<br/>
- Last modified : 2013-03-13 16:32:10 <br>
- <hr/>
- </td>
- </tr>
- <tr>
- <td class="linenum">1</td>
- <td class="normal">let foo</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">1</td>
- <td class="normal">let foo</td>
- </tr>
- <tr>
- <td class="linenum">2</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;some very long arguments that we break onto the next line</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">2</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;some very long arguments that we break onto the next line</td>
- </tr>
- <tr>
- <td class="linenum">3</td>
- <td class="normal">&nbsp;&nbsp;=</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">3</td>
- <td class="normal">&nbsp;&nbsp;=</td>
- </tr>
- <tr>
- <td class="linenum">4</td>
- <td class="normal">&nbsp;&nbsp;bar ();</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">4</td>
- <td class="normal">&nbsp;&nbsp;bar ();</td>
- </tr>
- <tr>
- <td class="linenum">5</td>
- <td class="normal">&nbsp;&nbsp;baz</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">5</td>
- <td class="normal">&nbsp;&nbsp;baz</td>
- </tr>
- <tr>
- <td class="linenum">6</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">6</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">7</td>
- <td class="normal">(* The picture shows where we want the `=' to be.&nbsp;&nbsp;However, Tuareg currently moves it over</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">7</td>
- <td class="normal">(* The picture shows where we want the `=' to be.&nbsp;&nbsp;However, Tuareg currently moves it over</td>
- </tr>
- <tr>
- <td class="linenum">8</td>
- <td class="normal">&nbsp;&nbsp; to line up with the arguments.</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">8</td>
- <td class="normal">&nbsp;&nbsp; to line up with the arguments.</td>
- </tr>
- <tr>
- <td class="linenum">9</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">9</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">10</td>
- <td class="normal">&nbsp;&nbsp; Perhaps this is merely a personal preference, but that seems ugly to me.</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">10</td>
- <td class="normal">&nbsp;&nbsp; Perhaps this is merely a personal preference, but that seems ugly to me.</td>
- </tr>
- <tr>
- <td class="linenum">11</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">11</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">12</td>
- <td class="normal">&nbsp;&nbsp; pszilagyi: It's consistent with other infix operators (although this is syntax) for it</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">12</td>
- <td class="normal">&nbsp;&nbsp; pszilagyi: It's consistent with other infix operators (although this is syntax) for it</td>
- </tr>
- <tr>
- <td class="linenum">13</td>
- <td class="normal">&nbsp;&nbsp; to be where you prefer. *)</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">13</td>
- <td class="normal">&nbsp;&nbsp; to be where you prefer. *)</td>
- </tr>
- <tr>
- <td class="linenum">14</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">14</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">15</td>
- <td class="normal">let foo arguments</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">15</td>
- <td class="normal">let foo arguments</td>
- </tr>
- <tr>
- <td class="linenum">16</td>
- <td class="normal">&nbsp;&nbsp;= bar</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">16</td>
- <td class="normal">&nbsp;&nbsp;= bar</td>
- </tr>
- <tr>
- <td class="linenum">17</td>
- <td class="normal"></td>
- <td width="16">&nbsp;</td>
- <td class="linenum">17</td>
- <td class="normal"></td>
- </tr>
- <tr>
- <td class="linenum">18</td>
- <td class="normal">let foo</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">18</td>
- <td class="normal">let foo</td>
- </tr>
- <tr>
- <td class="linenum">19</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arguments</td>
- <td width="16">&nbsp;</td>
- <td class="linenum">19</td>
- <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;arguments</td>
- </tr>
- <tr>
- <td class="linenum">20</td>
- <td class="normal">&nbsp;&nbsp;= bar</td>
+ <td class="linenum">67</td>
+ <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)</td>
<td width="16">&nbsp;</td>
- <td class="linenum">20</td>
- <td class="normal">&nbsp;&nbsp;= bar</td>
+ <td class="linenum">67</td>
+ <td class="normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"herd-retransmitter" ~unlink:true Message_store.Message_size.Byte)</td>
</tr>
</table>
<hr/>
-<i>Generated by <b>diff2html</b> on 2013-03-13 16:32:15</i>
+<i>Generated by <b>diff2html</b> on 2013-03-13 16:33:13</i>
</body>
</html>
View
0 tests/failing/js-functor.ml → tests/passing/js-functor.ml
File renamed without changes.
View
0 tests/failing/js-functor.ml.opts → tests/passing/js-functor.ml.opts
File renamed without changes.
View
0 tests/failing/js-let.ml → tests/passing/js-let.ml
File renamed without changes.
View
0 tests/failing/js-let.ml.opts → tests/passing/js-let.ml.opts
File renamed without changes.

0 comments on commit e0bea4e

Please sign in to comment.