Module JavaFrontend.JClasspath
type file_entry
=
|
Singleton of IBase.SourceFile.t
|
Duplicate of (string * IBase.SourceFile.t) list
map entry for source files with potential basename collision within the same compiler call
type t
=
{
classpath : string;
sources : file_entry IStdlib.IStd.String.Map.t;
classes : Javalib_pack.JBasics.ClassSet.t;
}
val load_from_verbose_output : string -> t
load the list of source files and the list of classes from the javac verbose file
val load_from_arguments : string -> t
load the list of source files and the list of classes from Config.generated_classes
type classmap
= Javalib_pack.JCode.jcode Javalib_pack.Javalib.interface_or_class Javalib_pack.JBasics.ClassMap.t
type program
val get_classmap : program -> classmap
val set_java_location : program -> Javalib_pack.JBasics.class_name -> IBase.Location.t -> unit
val get_java_location : program -> Javalib_pack.JBasics.class_name -> IBase.Location.t option
val mem_classmap : Javalib_pack.JBasics.class_name -> program -> bool
val cleanup : program -> unit
val load_program : classpath:string -> Javalib_pack.JBasics.ClassSet.t -> program
load a java program
val lookup_node : Javalib_pack.JBasics.class_name -> program -> Javalib_pack.JCode.jcode Javalib_pack.Javalib.interface_or_class option
retrieve a Java node from the classname
val add_missing_callee : program -> IR.Procname.t -> Javalib_pack.JBasics.class_name -> Javalib_pack.JBasics.method_signature -> unit
add the class name of method signature to the list of callees
val set_callee_translated : program -> IR.Procname.t -> unit
set that the CFG for the procedure has been created
val iter_missing_callees : program -> f:(IR.Procname.t -> Javalib_pack.JBasics.class_name -> Javalib_pack.JBasics.method_signature -> unit) -> unit