32 lines
710 B
C
32 lines
710 B
C
|
#ifndef PART_OF_EXPR_THAT_TRACKS_H
|
||
|
#define PART_OF_EXPR_THAT_TRACKS_H
|
||
|
|
||
|
#include <map>
|
||
|
#include <vector>
|
||
|
#include <string>
|
||
|
#include <libregexis024fa/tracking_variables.h>
|
||
|
|
||
|
struct SubtrackingNameInfo{
|
||
|
bool stored_in_ca = true;
|
||
|
bool stored_in_sa = false;
|
||
|
|
||
|
bool discovered = false;
|
||
|
tracking_var_type type;
|
||
|
/* These fields will be -1 if unused */
|
||
|
int colarr_first = -1;
|
||
|
int colarr_second = -1;
|
||
|
|
||
|
bool used_in_sifting = false;
|
||
|
bool minimizing = false;
|
||
|
int selarr_first = -1;
|
||
|
int selarr_second = -1;
|
||
|
};
|
||
|
|
||
|
struct KnownTrackingTools {
|
||
|
std::map<std::string, int64_t> track_names;
|
||
|
std::vector<SubtrackingNameInfo> retrieval_info;
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif //PART_OF_EXPR_THAT_TRACKS_H
|