cprover
java_class_loader_limitt Class Reference

#include <java_class_loader_limit.h>

Inheritance diagram for java_class_loader_limitt:
[legend]
Collaboration diagram for java_class_loader_limitt:
[legend]

Public Member Functions

 java_class_loader_limitt (message_handlert &_message_handler, std::string &java_cp_include_files)
 
bool load_class_file (const irep_idt &class_file_name)
 
- Public Member Functions inherited from messaget
virtual void set_message_handler (message_handlert &_message_handler)
 
message_handlertget_message_handler ()
 
 messaget ()
 
 messaget (const messaget &other)
 
 messaget (message_handlert &_message_handler)
 
virtual ~messaget ()
 
mstreamtget_mstream (unsigned message_level)
 
mstreamterror ()
 
mstreamtwarning ()
 
mstreamtresult ()
 
mstreamtstatus ()
 
mstreamtstatistics ()
 
mstreamtprogress ()
 
mstreamtdebug ()
 

Private Member Functions

void setup_class_load_limit (std::string &)
 initializes class with either regex matcher or match set More...
 

Private Attributes

std::regex regex_matcher
 
std::set< std::string > set_matcher
 
bool regex_match
 
std::smatch string_matcher
 

Additional Inherited Members

- Public Types inherited from messaget
enum  message_levelt {
  M_ERROR =1, M_WARNING =2, M_RESULT =4, M_STATUS =6,
  M_STATISTICS =8, M_PROGRESS =9, M_DEBUG =10
}
 
- Static Public Member Functions inherited from messaget
static mstreamteom (mstreamt &m)
 
static mstreamtendl (mstreamt &m)
 
- Protected Attributes inherited from messaget
message_handlertmessage_handler
 
mstreamt mstream
 

Detailed Description

Definition at line 21 of file java_class_loader_limit.h.

Constructor & Destructor Documentation

§ java_class_loader_limitt()

java_class_loader_limitt::java_class_loader_limitt ( message_handlert _message_handler,
std::string &  java_cp_include_files 
)
inlineexplicit

Definition at line 30 of file java_class_loader_limit.h.

References load_class_file(), and setup_class_load_limit().

Member Function Documentation

§ load_class_file()

bool java_class_loader_limitt::load_class_file ( const irep_idt file_name)
parameters: class file name
Returns
true if file should be loaded, else false

Definition at line 52 of file java_class_loader_limit.cpp.

References id2string(), regex_match, regex_matcher, set_matcher, and string_matcher.

Referenced by java_class_loadert::get_parse_tree(), java_class_loader_limitt(), and jar_filet::open().

§ setup_class_load_limit()

void java_class_loader_limitt::setup_class_load_limit ( std::string &  java_cp_include_files)
private

initializes class with either regex matcher or match set

parameters: parameter from java-cp-include-files

Definition at line 18 of file java_class_loader_limit.cpp.

References jsont::array, messaget::get_message_handler(), jsont::is_array(), jsont::is_null(), jsont::is_string(), parse_json(), regex_match, regex_matcher, set_matcher, and jsont::value.

Referenced by java_class_loader_limitt().

Member Data Documentation

§ regex_match

bool java_class_loader_limitt::regex_match
private

Definition at line 25 of file java_class_loader_limit.h.

Referenced by load_class_file(), and setup_class_load_limit().

§ regex_matcher

std::regex java_class_loader_limitt::regex_matcher
private

Definition at line 23 of file java_class_loader_limit.h.

Referenced by load_class_file(), and setup_class_load_limit().

§ set_matcher

std::set<std::string> java_class_loader_limitt::set_matcher
private

Definition at line 24 of file java_class_loader_limit.h.

Referenced by load_class_file(), and setup_class_load_limit().

§ string_matcher

std::smatch java_class_loader_limitt::string_matcher
private

Definition at line 26 of file java_class_loader_limit.h.

Referenced by load_class_file().


The documentation for this class was generated from the following files: