package frenetic

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Fdd.ActionSource

Sourcetype field_or_cont =
  1. | F of Field.t
  2. | K
Sourceval sexp_of_field_or_cont : field_or_cont -> Ppx_sexp_conv_lib.Sexp.t
Sourceval field_or_cont_of_sexp : Ppx_sexp_conv_lib.Sexp.t -> field_or_cont
Sourcemodule Seq : sig ... end
Sourcemodule Par : sig ... end
type t = Par.t
include Ppx_sexp_conv_lib.Sexpable.S with type t := t
include Vlr.Result with type t := t
include Vlr.HashCmp with type t := t
val equal : t -> t -> Ppx_deriving_runtime.bool
include Ppx_sexp_conv_lib.Sexpable.S with type t := t
val t_of_sexp : Sexplib0__.Sexp.t -> t
val sexp_of_t : t -> Sexplib0__.Sexp.t
Sourceval compare : t -> t -> int
Sourceval sum : t -> t -> t

An associative and commutative binary operation over the type t. The following should hold:

  • sum a (sum b c) = sum (sum a b) c.
  • sum a b = sum b a.
Sourceval prod : t -> t -> t

An associative binary operation over the type t. The following should hold:

  • prod a (prod b c) = prod (prod a b) c.
  • prod a (sum b c) = sum (prod a b) (prod a c).
Sourceval one : t

one returns identify action, which is a modification representing "no modifications"

Sourceval zero : t

zero returns empty action, which consistently with OpenFlow, means "drop"

Sourceval negate : t -> t

negate action implements negation for the zero and one actions. Any non-zero action will be mapped to zero by this function.

Sourceval to_policy : t -> Syntax.policy

to_policy a converts an action to a NetKAT policy. Since it's only modifications, it will have no predicates

Sourceval demod : Pattern.t -> t -> t

demod pattern removes any patterns from actions

Sourceval to_sdn : ?group_tbl:Frenetic_kernel.GroupTable0x04.t -> Core.Int64.t option -> t -> Frenetic_kernel.OpenFlow.par

to_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.

Sourceval get_queries : t -> string list

get_queries action returns a list of queries used in actions. May have dupes.

Sourceval pipes : t -> Core.String.Set.t

get_pipes action returns a set of pipes used in actions

Sourceval queries : t -> string list

queries action returns a de-duped set of queries referenced in action

Sourceval to_string : t -> string
OCaml

Innovation. Community. Security.