cprover
|
Utility for loading and parsing a specified java class file, returning the symbol table generated by this. More...
#include <util/symbol_table.h>
#include <goto-programs/goto_model.h>
#include <langapi/language.h>
#include <util/cmdline.h>
Go to the source code of this file.
Functions | |
symbol_tablet | load_java_class (const std::string &java_class_name, const std::string &class_path, const std::string &main="") |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table. More... | |
symbol_tablet | load_java_class (const std::string &java_class_name, const std::string &class_path, const std::string &main, std::unique_ptr< languaget > &&java_lang) |
symbol_tablet | load_java_class (const std::string &java_class_name, const std::string &class_path, const std::string &main, std::unique_ptr< languaget > &&java_lang, const cmdlinet &command_line) |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table. More... | |
symbol_tablet | load_java_class_lazy (const std::string &java_class_name, const std::string &class_path, const std::string &main) |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table. More... | |
Utility for loading and parsing a specified java class file, returning the symbol table generated by this.
Definition in file load_java_class.h.
symbol_tablet load_java_class | ( | const std::string & | java_class_name, |
const std::string & | class_path, | ||
const std::string & | main | ||
) |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table.
java_class_name | The name of the class file to load. It should not include the .class extension. |
class_path | The path to load the class from. Should be relative to the unit directory. |
main | The name of the main function or "" to use the default behaviour to find a main function. |
Definition at line 63 of file load_java_class.cpp.
References get_language_from_mode(), load_java_class(), main(), new_java_bytecode_language(), and register_language().
Referenced by load_java_class(), and load_java_class_lazy().
symbol_tablet load_java_class | ( | const std::string & | java_class_name, |
const std::string & | class_path, | ||
const std::string & | main, | ||
std::unique_ptr< languaget > && | java_lang | ||
) |
Definition at line 158 of file load_java_class.cpp.
References load_java_class(), main(), and cmdlinet::set().
symbol_tablet load_java_class | ( | const std::string & | java_class_name, |
const std::string & | class_path, | ||
const std::string & | main, | ||
std::unique_ptr< languaget > && | java_lang, | ||
const cmdlinet & | command_line | ||
) |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table.
java_class_name | The name of the class file to load. It should not include the .class extension. |
class_path | The path to load the class from. Should be relative to the unit directory. |
main | The name of the main function or "" to use the default behaviour to find a main function. |
java_lang | The language implementation to use for the loading, which will be destroyed by this function. |
Definition at line 85 of file load_java_class.cpp.
References configt::javat::classpath, config, languaget::final(), languaget::generate_support_functions(), irept::get_bool(), get_current_working_directory(), languaget::get_language_options(), has_suffix(), symbol_table_baset::has_symbol(), irept::id(), INVARIANT, configt::java, language_filet::language, symbol_table_baset::lookup(), main(), configt::main, null_message_handler, languaget::parse(), PRECONDITION, lazy_goto_modelt::process_whole_model_and_freeze(), messaget::set_message_handler(), goto_modelt::symbol_table, and languaget::typecheck().
symbol_tablet load_java_class_lazy | ( | const std::string & | java_class_name, |
const std::string & | class_path, | ||
const std::string & | main | ||
) |
Go through the process of loading, type-checking and finalising loading a specific class file to build the symbol table.
The functions are converted using ci_lazy_methods (equivalent to passing –lazy-methods to JBMC)
java_class_name | The name of the class file to load. It should not include the .class extension. |
class_path | The path to load the class from. Should be relative to the unit directory. |
main | The name of the main function or "" to use the default behaviour to find a main function. |
Definition at line 36 of file load_java_class.cpp.
References free_form_cmdlinet::add_flag(), get_language_from_mode(), load_java_class(), main(), new_java_bytecode_language(), and register_language().