class NfaTranscriber
Declaration
class NfaTranscriber { /* full declaration omitted */ };
Description
The internal class that maintains all possible paths through an NFA based on a path through the DFA.
Declared at: llvm/include/llvm/Support/Automaton.h:60
Member Variables
- private ArrayRef<llvm::NfaStatePair> TransitionInfo
- Cached transition table. This is a table of NfaStatePairs that contains zero-terminated sequences pointed to by DFA transitions.
- private SpecificBumpPtrAllocator< llvm::internal::NfaTranscriber::PathSegment> Allocator
- We allocate segment objects frequently. Allocate them upfront and dispose at the end of a traversal rather than hammering the system allocator.
- private std::deque<PathSegment*> Heads
- Heads of each tracked path. These are not ordered.
- private SmallVector<llvm::NfaPath, 4> Paths
- The returned paths. This is populated during getPaths.
Method Overview
- public NfaTranscriber(ArrayRef<llvm::NfaStatePair> TransitionInfo)
- public ArrayRef<llvm::NfaPath> getPaths()
- public ArrayRef<llvm::NfaStatePair> getTransitionInfo() const
- private llvm::internal::NfaTranscriber::PathSegment * makePathSegment(uint64_t State, llvm::internal::NfaTranscriber::PathSegment * Tail)
- public void reset()
- private void transition(ArrayRef<llvm::NfaStatePair> Pairs)
- public void transition(unsigned int TransitionInfoIdx)
Methods
¶NfaTranscriber(
ArrayRef<llvm::NfaStatePair> TransitionInfo)
NfaTranscriber(
ArrayRef<llvm::NfaStatePair> TransitionInfo)
Declared at: llvm/include/llvm/Support/Automaton.h:115
Parameters
- ArrayRef<llvm::NfaStatePair> TransitionInfo
¶ArrayRef<llvm::NfaPath> getPaths()
ArrayRef<llvm::NfaPath> getPaths()
Declared at: llvm/include/llvm/Support/Automaton.h:141
¶ArrayRef<llvm::NfaStatePair> getTransitionInfo()
const
ArrayRef<llvm::NfaStatePair> getTransitionInfo()
const
Declared at: llvm/include/llvm/Support/Automaton.h:120
¶llvm::internal::NfaTranscriber::PathSegment*
makePathSegment(
uint64_t State,
llvm::internal::NfaTranscriber::PathSegment*
Tail)
llvm::internal::NfaTranscriber::PathSegment*
makePathSegment(
uint64_t State,
llvm::internal::NfaTranscriber::PathSegment*
Tail)
Description
Create a new segment and return it.
Declared at: llvm/include/llvm/Support/Automaton.h:85
Parameters
- uint64_t State
- llvm::internal::NfaTranscriber::PathSegment* Tail
¶void reset()
void reset()
Declared at: llvm/include/llvm/Support/Automaton.h:124
¶void transition(
ArrayRef<llvm::NfaStatePair> Pairs)
void transition(
ArrayRef<llvm::NfaStatePair> Pairs)
Description
Pairs defines a sequence of possible NFA transitions for a single DFA transition.
Declared at: llvm/include/llvm/Support/Automaton.h:93
Parameters
- ArrayRef<llvm::NfaStatePair> Pairs
¶void transition(unsigned int TransitionInfoIdx)
void transition(unsigned int TransitionInfoIdx)
Declared at: llvm/include/llvm/Support/Automaton.h:132
Parameters
- unsigned int TransitionInfoIdx