cprover
java_class_loader_limit.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: limit class path loading
4 
5 Author: Daniel Kroening, kroening@kroening.com
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_JAVA_BYTECODE_JAVA_CLASS_LOADER_LIMIT_H
13 #define CPROVER_JAVA_BYTECODE_JAVA_CLASS_LOADER_LIMIT_H
14 
15 #include <set>
16 #include <regex>
17 
18 #include <util/irep.h>
19 #include <util/message.h>
20 
22 {
23  std::regex regex_matcher;
24  std::set<std::string> set_matcher;
26  std::smatch string_matcher;
27 
28  void setup_class_load_limit(std::string &);
29  public:
31  message_handlert &_message_handler,
32  std::string &java_cp_include_files) :
33  messaget(_message_handler),
34  regex_match(false)
35  {
36  setup_class_load_limit(java_cp_include_files);
37  }
38  bool load_class_file(const irep_idt &class_file_name);
39 };
40 
41 #endif
std::set< std::string > set_matcher
java_class_loader_limitt(message_handlert &_message_handler, std::string &java_cp_include_files)
void setup_class_load_limit(std::string &)
initializes class with either regex matcher or match set
bool load_class_file(const irep_idt &class_file_name)