include sig ... endval field_or_cont_of_sexp : Ppx_sexp_conv_lib.Sexp.t ‑> field_or_contval sexp_of_field_or_cont : field_or_cont ‑> Ppx_sexp_conv_lib.Sexp.tmodule Seq : sig ... endmodule Par : sig ... endinclude Vlr.Result with type t := tval t_of_sexp : Ppx_sexp_conv_lib.Sexp.t ‑> tval sexp_of_t : t ‑> Ppx_sexp_conv_lib.Sexp.tval hash_fold_t : Ppx_hash_lib.Std.Hash.state ‑> t ‑> Ppx_hash_lib.Std.Hash.stateval hash : t ‑> Ppx_hash_lib.Std.Hash.hash_valueval to_string : t ‑> stringval one : tval zero : tnegate action implements negation for the zero and one actions. Any
non-zero action will be mapped to zero by this function.
val to_policy : t ‑> Syntax.policyto_policy a converts an action to a NetKAT policy. Since it's only modifications, it will have no predicates
val to_sdn : ?group_tbl:Frenetic_kernel.GroupTable0x04.t ‑> Core.Int64.t option ‑> t ‑> Frenetic_kernel.OpenFlow.parto_sdn switch action converts a NetKAT action to an SDN action. At the moment this function
assumes that fields are assigned to proper bitwidth integers, and does
no validation along those lines. If the input is derived from a NetKAT
surface syntax program, then this assumption likely holds.
val get_queries : t ‑> string listget_queries action returns a list of queries used in actions. May have dupes.
val to_string : t ‑> string