CBMC
load_method_by_regex.h File Reference

Process a pattern to use as a regex for selecting extra entry points for ci_lazy_methodst. More...

#include <util/irep.h>
#include <functional>
#include <vector>
+ Include dependency graph for load_method_by_regex.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

std::function< std::vector< irep_idt >const symbol_table_baset &symbol_table)> build_load_method_by_regex (const std::string &pattern)
 Create a lambda that returns the symbols that the given pattern should be loaded.If the pattern doesn't include a colon for matching the descriptor, append a :(. More...
 
bool does_pattern_miss_descriptor (const std::string &pattern)
 Identify if a parameter includes a part that will match a descriptor. More...
 

Detailed Description

Process a pattern to use as a regex for selecting extra entry points for ci_lazy_methodst.

Definition in file load_method_by_regex.h.

Function Documentation

◆ build_load_method_by_regex()

std::function<std::vector<irep_idt>const symbol_table_baset &symbol_table)> build_load_method_by_regex ( const std::string &  pattern)

Create a lambda that returns the symbols that the given pattern should be loaded.If the pattern doesn't include a colon for matching the descriptor, append a :(.

*).* to the regex. Note this will mean all overloaded methods will be marked as extra entry points for CI lazy loading. If the pattern doesn't include the java:: prefix, prefix that

Parameters
patternThe user provided pattern
Returns
The lambda to execute.

Definition at line 58 of file load_method_by_regex.cpp.

◆ does_pattern_miss_descriptor()

bool does_pattern_miss_descriptor ( const std::string &  pattern)

Identify if a parameter includes a part that will match a descriptor.

That is, does it have a colon separtor.

Parameters
patternThe user provided pattern
Returns
True if no descriptor is found (that is, the only : relates to the java:: prefix.

Definition at line 39 of file load_method_by_regex.cpp.