ppx_orakuda

ORakuda, Perlish string literals in OCaml
Library ppx_orakuda_plugin
Module Lexformat
exception Error of int * int * string
val errorf : Lexing.lexbuf -> ( 'a, unit, string, 'b ) Pervasives.format4 -> 'a
val errorf_at : int -> int -> ( 'a, unit, string, 'b ) Pervasives.format4 -> 'a
type ctype =
| Cd
| Cu
| Cx
| CX
| Co
| Cs
| CS
| Cc
| CC
| Cf
| CF
| Ce
| CE
| Cg
| CG
| CB
| Cld
| Clu
| Clx
| ClX
| Clo
| Cnd
| Cnu
| Cnx
| CnX
| Cno
| CLd
| CLu
| CLx
| CLX
| CLo
| Ca
| Ct
| Cformat of t
| Cformat_subst of t
| Cflush
| Cpercent
and flag =
| Fminus
| Fzero
| Fplus
| Fspace
| Fsharp
and width_precision =
| WPint of int
| WPstar
and inlined_arg =
| Arg_expr of string
| Arg_var of string
| Arg_rex_ref of char
and conversion = {
flags : flag list;
width : width_precision option;
precision : width_precision option option;(*

Some (Some _) : ".1", ".*" Some None : "." None : ""

*)
ctype : ctype;
inlined_arg : (inlined_arg * int) option;
}
and token =
| String of string
| Char of char
| Conv of conversion
| Escaped of char
and t = token list
val conversion_to_string : conversion -> string
val compile_conversion : conversion -> [ `String of string | `Star ] list
val from_string : char list -> string -> t * string option

Tokens and remains if stopped at special chars. Lexing stops when it finds a non-escaped special char

val from_string_to_classic : char list -> string -> t * (int list * [ `Applied of inlined_arg * int | `Var of int ] list) * string * string option

remains