Module Ppx_log_kernel.Log_tag
type t = {label : Ppxlib.label;label_is_optional : Base.bool;data : Ppx_log_kernel.Tag_data.t Ppxlib.loc;
}val data :
Ppx_log_kernel.Log_tag.t ->
Ppx_log_kernel.Tag_data.t Ppxlib.loc @@ portableval label_is_optional : Ppx_log_kernel.Log_tag.t -> Base.bool @@ portableval label : Ppx_log_kernel.Log_tag.t -> Ppxlib.label @@ portableval compare_label :
Ppx_log_kernel.Log_tag.t ->
Ppx_log_kernel.Log_tag.t ->
Base.intorder by the labels
val parse_arg :
(Ppxlib.arg_label * Ppxlib.expression) ->
Ppx_log_kernel.Log_tag.tSee tests in the implementation for more examples.
Parsing rules:
~x:123 => {label = "x"; data = Constant <123>}
~x:some_expr => {label = "x"; data = String_expression some_expr}
~x => {label = "x"; data = String_expression x}
~x:(expr : t) => {label = "x"; data = Type_constrained (expr, t)}
(expr : t) => {label = to_string expr; data = Type_constrained (expr, t)}
expr => {label = ""; data = String_expression expr}
~_:expr => {label = ""; data = String_expression expr}
~_:(expr : t) => {label = ""; data = Type_constrained (expr, t)}
?x:expr => invalidval render_list :
Ppx_log_kernel.Log_tag.t Base.list ->
loc:Ppxlib.location ->
Ppxlib.expressionProduces an expression that will evaluate to a Log_tag.t list.