Module Asttools

val prefix_eq : string -> string -> bool
type (!'a, !'b) choice =
| Left of 'a
| Right of 'b
val isLeft : ('a'b) choice -> bool
val isRight : ('a'b) choice -> bool
val outLeft : ('a'b) choice -> 'a
val outRight : ('a'b) choice -> 'b
val option_map : ('a -> 'b) -> 'a option -> 'b option
val mustSome : string -> 'a option -> 'a
val mustLeft : string -> ('a'b) choice -> 'a
val mustRight : string -> ('a'b) choice -> 'b
val stream_npeek : int -> (string * string) Stdlib.Stream.t -> (string * string) list
val longid_concat : MLast.longid -> MLast.longid -> MLast.longid
val longid_last : MLast.longid -> MLast.longid
val module_type_unwrap_attrs : MLast.module_type -> MLast.module_type * MLast.attribute list
val module_expr_unwrap_attrs : MLast.module_expr -> MLast.module_expr * MLast.attribute list
val sep_last : 'a list -> 'a * 'a list
val try_find : ('a -> 'b) -> 'a list -> 'b
val expr_to_path_module_expr : MLast.expr -> MLast.module_expr option
val expr_last_is_uid : MLast.expr -> bool
val expr_first_is_id : MLast.expr -> bool
val expr_is_module_path : MLast.expr -> bool
val check_stream : ?⁠avoid_tokens:(string * string) list -> (int * ((string * string) list -> 'a option(string * string) list -> bool) choice) list -> (string * string) Stdlib.Stream.t -> int * 'a
val expr_wrap_attrs : MLast.loc -> MLast.expr -> MLast.attribute list -> MLast.expr
val expr_to_inline : MLast.expr -> (MLast.loc * string) option -> MLast.attribute list -> MLast.expr
val ctyp_wrap_attrs : MLast.ctyp -> MLast.attribute list -> MLast.ctyp
val ctyp_to_inline : MLast.ctyp -> (MLast.loc * string) option -> MLast.attribute list -> MLast.ctyp
val patt_wrap_attrs : MLast.patt -> MLast.attribute list -> MLast.patt
val patt_to_inline : MLast.patt -> (MLast.loc * string) option -> MLast.attribute list -> MLast.patt
val class_expr_wrap_attrs : MLast.class_expr -> MLast.attribute list -> MLast.class_expr
val class_type_wrap_attrs : MLast.class_type -> MLast.attribute list -> MLast.class_type
val module_type_wrap_attrs : MLast.module_type -> MLast.attribute list -> MLast.module_type
val module_expr_wrap_attrs : MLast.module_expr -> MLast.attribute list -> MLast.module_expr
val str_item_to_inline : MLast.str_item -> (MLast.loc * string) option -> MLast.str_item
val sig_item_to_inline : MLast.sig_item -> (MLast.loc * string) option -> MLast.sig_item
val longident_of_string_list : MLast.loc -> string list -> MLast.longid
val string_list_of_longident : MLast.longid -> string list
val longident_lident_of_string_list : MLast.loc -> string list -> MLast.longid_lident
val string_list_of_longident_lident : MLast.longid_lident -> string list
val expr_of_string_list : MLast.loc -> string list -> MLast.expr
val expr_concat : MLast.expr -> MLast.expr -> MLast.expr