Advertisement
Guest User

Untitled

a guest
Nov 25th, 2015
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.91 KB | None | 0 0
  1. diff --git a/src/ppx/ppx_sqlexpr.ml b/src/ppx/ppx_sqlexpr.ml
  2. index 8fd5763..b13ebbd 100644
  3. --- a/src/ppx/ppx_sqlexpr.ml
  4. +++ b/src/ppx/ppx_sqlexpr.ml
  5. @@ -13,11 +13,11 @@ let new_id =
  6. sprintf "__ppx_sql_%d" !n
  7.  
  8. let gen_stmt loc ~cacheable sql inp =
  9. - let mkstr s = Exp.constant (Const_string (s, None)) in
  10. + let mkstr s = Exp.constant ~loc (Const_string (s, None)) in
  11. let mklid s = {txt=Lident s; loc} in
  12. - let mkident s = Exp.ident (mklid s) in
  13. - let mkapply fn args = Exp.apply (mkident fn) args in
  14. - let mkpident txt = Pat.var {txt; loc} in
  15. + let mkident s = Exp.ident ~loc (mklid s) in
  16. + let mkapply fn args = Exp.apply ~loc (mkident fn) args in
  17. + let mkpident txt = Pat.var ~loc {txt; loc} in
  18.  
  19. let k = new_id () in
  20. let st = new_id () in
  21. @@ -46,23 +46,23 @@ let gen_stmt loc ~cacheable sql inp =
  22.  
  23. let gen_expr loc ~cacheable sql inp outp =
  24. let mklid s = {txt=Lident s; loc} in
  25. - let mkident s = Exp.ident (mklid s) in
  26. - let mkpident txt = Pat.var {txt; loc} in
  27. - let mkint i = Exp.constant (Const_int i) in
  28. + let mkident s = Exp.ident ~loc (mklid s) in
  29. + let mkpident txt = Pat.var ~loc {txt; loc} in
  30. + let mkint i = Exp.constant ~loc (Const_int i) in
  31.  
  32. let stmt = gen_stmt loc ~cacheable sql inp in
  33. let id = new_id () in
  34. let conv s = Longident.(Ldot (Ldot (Lident "Sqlexpr", "Conversion"), s)) in
  35. let conv_exprs = List.mapi (fun i elem ->
  36. let txt = conv (Sqlexpr_parser.out_type2str elem) in
  37. - let fn = Exp.ident {txt; loc} in
  38. + let fn = Exp.ident ~loc {txt; loc} in
  39. let args = [("", [%expr Array.get [%e mkident id] [%e mkint i]])] in
  40. - Exp.apply fn args) outp in
  41. + Exp.apply ~loc fn args) outp in
  42. let tuple_func =
  43. let e = match conv_exprs with
  44. [] -> assert false
  45. | [x] -> x
  46. - | hd::tl -> Exp.tuple conv_exprs in
  47. + | hd::tl -> Exp.tuple ~loc conv_exprs in
  48. [%expr fun [%p mkpident id] -> [%e e]] in
  49. [%expr {
  50. Sqlexpr.statement = [%e stmt];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement