This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
|
|
@ -0,0 +1,63 @@
|
|||
open Ppxlib
|
||||
|
||||
let identifier = Longident.Lident "mod"
|
||||
;;
|
||||
[%%ignore]
|
||||
|
||||
Format.asprintf "%a" Pprintast.longident identifier
|
||||
;;
|
||||
[%%expect{|
|
||||
- : string = "\\#mod"
|
||||
|}]
|
||||
|
||||
module Build = Ast_builder.Make(struct let loc = Location.none end)
|
||||
|
||||
(* 10 mod 3 *)
|
||||
let expr =
|
||||
let open Build in
|
||||
eapply (pexp_ident (Located.mk identifier)) [(eint 10); (eint 3)]
|
||||
;;
|
||||
[%%ignore]
|
||||
|
||||
Format.asprintf "%a" Pprintast.expression expr
|
||||
;;
|
||||
[%%expect{|
|
||||
- : string = "10 mod 3"
|
||||
|}]
|
||||
|
||||
(* [let f = (mod) *)
|
||||
let stri =
|
||||
let open Build in
|
||||
pstr_value Nonrecursive
|
||||
[ value_binding
|
||||
~pat:(pvar "f")
|
||||
~expr:(pexp_ident (Located.mk identifier))
|
||||
]
|
||||
;;
|
||||
[%%ignore]
|
||||
|
||||
Format.asprintf "%a" Pprintast.structure_item stri
|
||||
;;
|
||||
[%%expect{|
|
||||
- : string = "let f = (mod)"
|
||||
|}]
|
||||
|
||||
let stri2 =
|
||||
let open Build in
|
||||
pstr_value
|
||||
Nonrecursive
|
||||
[ value_binding
|
||||
~pat:(pvar "f")
|
||||
~expr:(pexp_function
|
||||
[pparam_val Nolabel None (pvar "lsl")]
|
||||
None
|
||||
(Pfunction_body (pexp_ident (Located.mk identifier))))
|
||||
]
|
||||
;;
|
||||
[%%ignore]
|
||||
|
||||
Format.asprintf "%a" Pprintast.structure_item stri2
|
||||
;;
|
||||
[%%expect{|
|
||||
- : string = "let f (lsl) = (mod)"
|
||||
|}]
|
||||
Loading…
Add table
Add a link
Reference in a new issue