Soteria_rust_lib.Frontendmodule Exe : sig ... endUtilities to run commands
module Cleaner : sig ... endSimple utility to create and then delete files
module Cmd : sig ... endOrganise commands to send to the Soteria-Rust frontend
module Lib : sig ... endtype entry_point = {fun_decl : Charon.UllbcAst.fun_decl;expect_error : bool;fuel : Soteria.Symex.Fuel_gauge.t;}type mk_cmd = ?input:string -> output:string -> unit -> Cmd.tval default : unit -> Cmd.tval kani : unit -> Cmd.tval miri : unit -> Cmd.tFilters a name, according to the current Config.t.filter and Config.t.exclude settings. If there are no filters, all names are included; otherwise, a name is included if it matches any filter and doesn't match any exclude.
val get_entry_point :
entry_point_filter ->
Charon.UllbcAst.crate ->
Charon.UllbcAst.fun_decl ->
entry_point optionval create_using_current_config : unit -> mk_cmd * entry_point_filterval with_entry_points :
filter:entry_point_filter ->
Charon.UllbcAst.crate ->
Charon.UllbcAst.crate * entry_point listval parse_ullbc_of_file : mk_cmd:mk_cmd -> string -> Charon.UllbcAst.crateGiven a Rust file, parse it into LLBC, using Charon.
val parse_ullbc_of_crate : mk_cmd:mk_cmd -> string -> Charon.UllbcAst.crateGiven a Rust file, parse it into LLBC, using Charon.
val parse_ullbc_raw :
mk_cmd:mk_cmd ->
[< `Dir of string | `File of string ] ->
Charon.UllbcAst.crateGiven a path, if it's a file will parse the ULLBC of that single file using rustc; otherwise will assume it's a path to a crate and use cargo. Will translate all functions in the crate, without filtering entry-points.
val parse_ullbc_with_entry_points :
[< `Dir of string | `File of string ] ->
Charon.UllbcAst.crate * entry_point listGiven a path, will check if it has a .rs extension, in which case it will parse the ULLBC of that single file using rustc; otherwise will assume it's a path to a crate and use cargo. Will only start translation from functions considered entry-points.