Imandra_interactive.System
Low level access to the functions used for #use "foo.ml"
, #directory "foo"
, etc. Use with care.
val use :
?scope:Opentelemetry.Trace.scope ->
?syntax:Imandra_syntax.Syntax.t ->
?batch:bool ->
?quiet:bool ->
string ->
unit
Load a file's statements directly into the environment. Same as #use "thefile.ml";;
.
val mod_use :
?scope:Opentelemetry.Trace.scope ->
?syntax:Imandra_syntax.Syntax.t ->
?quiet:bool ->
string ->
unit
Load a file as a module. Same as #mod_use "thefile.ml";;
.
val import :
?scope:Opentelemetry.Trace.scope ->
?quiet:bool ->
?syntax:Imandra_syntax.Syntax.t ->
string ->
unit
Import a file as a module. Same as #import "thefile.iml";;
.
val require_lib :
?scope:Opentelemetry.Trace.scope ->
?meth:[ `Mod_use | `Import | `Use ] ->
?syntax:Imandra_syntax.Syntax.t ->
string ->
unit
Require an OCaml library, and possibly also load its imandra file using the given syntax
and method of loading.
Add a path to OCaml's lookup mechanism. Same as #directory "thepath";;
.
An API for run-time reflection and meta-programming.
This is used to evaluate strings into the environment, at runtime, in a type-safe way.
val eval :
?scope:Opentelemetry.Trace.scope ->
?syntax:Imandra_syntax.Syntax.t ->
?batch:bool ->
?loc:string ->
?quiet:bool ->
string ->
unit
eval code
runs the given string code
through Imandra's evaluator (and through OCaml toplevel evaluator).
val eval_code_fragment :
?scope:Opentelemetry.Trace.scope ->
?loc:string ->
?quiet:bool ->
Imandra_surface.Code_fragment.t ->
unit
Same as eval
but using a code fragment
module Prompt : sig ... end
module Util : sig ... end
module Mode : sig ... end