Std.Plugin
Plugin - a loadable self-contained piece of code.
Plugin is a bundle, that contains code, data and meta information.
type t = plugin
val of_path : string -> t
of_path path
creates a plugin of a give path
val path : t -> string
path plugin
is a plugin's path
val name : t -> string
name plugin
is a plugin's name
val desc : t -> string
desc plugin
returns plugin description
val bundle : t -> Bap_bundle.Std.bundle
bundle plugin
returns a plugin's bundle
val load : ?argv:string array -> t -> unit Core_kernel.Or_error.t
load plugin
load all unsatisfied dependencies of a plugin
, and then load the plugin
itself. If it is already loaded, then do nothing.
Returns an error if some dependency can't be satisfied, or if there is a name conflict with already loaded or linked compilation unit. Can return error if the underlying loader raised an error, or package is malformed, or if there is some other system error.
val loaded : t -> unit Bap_future.Std.future
loaded event happens when a pass is successfully loaded