Electroneum
reg_exp_definer.h File Reference
#include <boost/interprocess/detail/atomic.hpp>
#include "syncobj.h"
Include dependency graph for reg_exp_definer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  epee::global_regexp_critical_section
 

Namespaces

 epee
 

Macros

#define STATIC_REGEXP_EXPR_1(var_name, xpr_text, reg_exp_flags)
 
#define STATIC_REGEXP_EXPR_2(var_name, xpr_text, reg_exp_flags)
 
#define STATIC_REGEXP_EXPR_3(var_name, xpr_text, reg_exp_flags)
 

Macro Definition Documentation

◆ STATIC_REGEXP_EXPR_1

#define STATIC_REGEXP_EXPR_1 (   var_name,
  xpr_text,
  reg_exp_flags 
)
Value:
static volatile uint32_t regexp_initialized_1 = 0;\
volatile uint32_t local_is_initialized_1 = regexp_initialized_1;\
if(!local_is_initialized_1)\
gregexplock.get_lock().lock();\
static const boost::regex var_name(xpr_text , reg_exp_flags);\
if(!local_is_initialized_1)\
{\
boost::interprocess::ipcdetail::atomic_write32(&regexp_initialized_1, 1);\
gregexplock.get_lock().unlock();\
}
unsigned int uint32_t
Definition: stdint.h:126

Definition at line 47 of file reg_exp_definer.h.

◆ STATIC_REGEXP_EXPR_2

#define STATIC_REGEXP_EXPR_2 (   var_name,
  xpr_text,
  reg_exp_flags 
)
Value:
static volatile uint32_t regexp_initialized_2 = 0;\
volatile uint32_t local_is_initialized_2 = regexp_initialized_2;\
if(!local_is_initialized_2)\
gregexplock.get_lock().lock().lock();\
static const boost::regex var_name(xpr_text , reg_exp_flags);\
if(!local_is_initialized_2)\
{\
boost::interprocess::ipcdetail::atomic_write32(&regexp_initialized_2, 1);\
gregexplock.get_lock().lock().unlock();\
}
unsigned int uint32_t
Definition: stdint.h:126

Definition at line 59 of file reg_exp_definer.h.

◆ STATIC_REGEXP_EXPR_3

#define STATIC_REGEXP_EXPR_3 (   var_name,
  xpr_text,
  reg_exp_flags 
)
Value:
static volatile uint32_t regexp_initialized_3 = 0;\
volatile uint32_t local_is_initialized_3 = regexp_initialized_3;\
if(!local_is_initialized_3)\
gregexplock.get_lock().lock().lock();\
static const boost::regex var_name(xpr_text , reg_exp_flags);\
if(!local_is_initialized_3)\
{\
boost::interprocess::ipcdetail::atomic_write32(&regexp_initialized_3, 1);\
gregexplock.get_lock().lock().unlock();\
}
unsigned int uint32_t
Definition: stdint.h:126

Definition at line 71 of file reg_exp_definer.h.