Module Edge.Kind

type t =
  1. | Direct
    (*

    Immediate copy; e.g., assigment or passing an argument

    *)
  2. | Call
    (*

    Target is ArgumentOf

    *)
  3. | Return
    (*

    Source is ReturnOf

    *)
  4. | Capture
    (*

    X=1, F=fun()->X end has Capture edge from X to F

    *)
  5. | Builtin
    (*

    Edge coming from a suppressed builtin call, ultimately exported as a Copy

    *)
  6. | Summary of {
    1. callee : IR.Procname.t;
    2. shape_is_preserved : bool;
    }
    (*

    Summarizes the effect of a procedure call

    *)
  7. | DynamicCallFunction
  8. | DynamicCallModule