Module Goblint_lib.Server

Interactive server mode using JSON-RPC.

module InvariantParser = WitnessUtil.InvariantParser
module type ArgWrapper = sig ... end
type t = {
  1. mutable file : GoblintCil.Cil.file option;
  2. mutable max_ids : MaxIdUtil.max_ids;
  3. arg_wrapper : (module ArgWrapper) ResettableLazy.t;
  4. invariant_parser : InvariantParser.t ResettableLazy.t;
  5. input : Batteries.IO.input;
  6. output : unit Batteries.IO.output;
}
module type Request = sig ... end
module Registry : sig ... end
val registry : Registry.t
module ParamParser (R : Request) : sig ... end
module Function : sig ... end
val handle_request : t -> Jsonrpc.Request.t -> Jsonrpc.Response.t
val handle_packet : t -> Jsonrpc.Packet.t -> unit
val serve : t -> unit
val is_server_node : Node0.t -> bool

Is node valid for lookup by location? Used for abstract debugging breakpoints.

val arg_wrapper : (module ArgWrapper) ResettableLazy.t
val invariant_parser : InvariantParser.t ResettableLazy.t
val make : ?input:BatIO.input -> ?output:unit BatIO.output -> GoblintCil.Cil.file option -> t
val bind : unit -> BatInnerIO.input option * unit BatInnerIO.output option
val start : GoblintCil.Cil.file option -> unit
val reparse : t -> GoblintCil.file * bool
val virtual_changes : GoblintCil.file -> CompareCIL.change_info
val increment_data : t -> GoblintCil.file -> bool -> Analyses.increment_data option * bool
module Locator : sig ... end
val node_locator : Locator.t ResettableLazy.t
val analyze : ?reset:bool -> t -> unit