irods  4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
  Fossies Dox: irods-4.2.8.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

irods_state_table.h
Go to the documentation of this file.
1 #ifndef IRODS_STATE_TABLE_H
2 #define IRODS_STATE_TABLE_H
3 
4 #ifdef MAKE_IRODS_STATE_MAP
5 #include <map>
6 #include <string>
7 namespace {
8  namespace irods_state_map_construction {
9  std::map<const int, const std::string> irods_state_map;
10 
11  // We pass the variable as a const reference here to silence
12  // unused variable warnings in a controlled manner.
13  int create_state(const std::string& state_name, const int state_code, const int&) {
14  irods_state_map.insert(std::pair<const int, const std::string>(state_code, state_name));
15  return state_code;
16  }
17  }
18 }
19 #define NEW_STATE(state_name, state_code) const int state_name = irods_state_map_construction::create_state(#state_name, state_code, state_name);
20 #else
21 #define NEW_STATE(state_name, state_code) state_name = state_code,
23 {
24 #endif
25 
26 // 5,000,000 - 5,999,999 - Rule Engine
27 // clang-format off
30 // clang-format on
31 #ifndef MAKE_IRODS_STATE_MAP
32 };
33 #endif
34 
35 #endif // IRODS_STATE_TABLE_H
RULE_ENGINE_SKIP_OPERATION
@ RULE_ENGINE_SKIP_OPERATION
Definition: irods_state_table.h:29
NEW_STATE
#define NEW_STATE(state_name, state_code)
Definition: irods_state_table.h:21
IRODS_STATE_ENUM
IRODS_STATE_ENUM
Definition: irods_state_table.h:23
RULE_ENGINE_CONTINUE
@ RULE_ENGINE_CONTINUE
Definition: irods_state_table.h:28