|  | reflex::Pattern::HFA Struct Reference updated Fri May 16 2025 by Robert van Engelen |

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Attributes | Static Public Attributes | List of all members
reflex::Pattern::HFA Struct Reference

Indexing hash finite state automaton for indexed file search. More...

Collaboration diagram for reflex::Pattern::HFA:
[legend]

## Public Types
typedef ORanges< Hash > | HashRange
typedef std::array< HashRange, MAX_DEPTH > | HashRanges
typedef std::map< DFA::State *, HashRanges > | StateHashes
typedef Index | State
typedef std::map< State, HashRanges > | Hashes
typedef std::set< State > | StateSet
typedef std::map< State, StateSet > | States
typedef std::bitset< MAX_STATES > | VisitSet

## Public Attributes
Hashes | hashes [MAX_DEPTH]
States | states

## Static Public Attributes
static const size_t | MAX_DEPTH = 16
| max hashed pattern length must be between 3 and 16, long is accurate More...
static const size_t | MAX_CHAIN = 8
| max length of hashed chars chain must be between 2 and 8 (8 is optimal) More...
static const size_t | MAX_STATES = 1024
| max number of states must be 256 or greater More...
static const size_t | MAX_RANGES = 262144
| max number of hashes ranges on an edge to the next state More...

## Detailed Description

Indexing hash finite state automaton for indexed file search.

## Member Typedef Documentation

typedef std::map<State,HashRanges> reflex::Pattern::HFA::Hashes

typedef ORanges<Hash> reflex::Pattern::HFA::HashRange

typedef std::array<HashRange,MAX_DEPTH> reflex::Pattern::HFA::HashRanges

typedef Index reflex::Pattern::HFA::State

typedef std::map<DFA::State*,HashRanges> reflex::Pattern::HFA::StateHashes

typedef std::map<State,StateSet> reflex::Pattern::HFA::States

typedef std::set<State> reflex::Pattern::HFA::StateSet

typedef std::bitset<MAX_STATES> reflex::Pattern::HFA::VisitSet

## Member Data Documentation

Hashes reflex::Pattern::HFA::hashes[MAX_DEPTH]

const size_t reflex::Pattern::HFA::MAX_CHAIN = 8
| static

max length of hashed chars chain must be between 2 and 8 (8 is optimal)

const size_t reflex::Pattern::HFA::MAX_DEPTH = 16
| static

max hashed pattern length must be between 3 and 16, long is accurate

const size_t reflex::Pattern::HFA::MAX_RANGES = 262144
| static

max number of hashes ranges on an edge to the next state

const size_t reflex::Pattern::HFA::MAX_STATES = 1024
| static

max number of states must be 256 or greater

States reflex::Pattern::HFA::states

The documentation for this struct was generated from the following file:

- pattern.h