15#ifndef WSFPARSESEQUENCE_HPP
16#define WSFPARSESEQUENCE_HPP
45 return (
mActions.size() <= aSequenceIndex) ? nullptr :
mActions[aSequenceIndex];
60 return (s !=
mSequence.end()) ? ut::safe_cast<size_t, ptrdiff_t>(std::distance(
mSequence.begin(), s)) : ut::npos;
65 return (a !=
mActions.end()) ? ut::safe_cast<size_t, ptrdiff_t>(std::distance(
mActions.begin(), a)) : ut::npos;
Definition WsfParseAction.hpp:329
Definition WsfParseNode.hpp:61
Definition WsfParseRule.hpp:263
WsfParseRule(WsfParseRuleMemory &aMem, RuleType aType)
Definition WsfParseRule.cpp:85
WsfParseRule * mParentRulePtr
Pointer to the parent rule. This should be valid for unnamed rules.
Definition WsfParseRule.hpp:253
size_t FindActionIndex(WsfParseAction *aActionPtr)
Definition WsfParseSequence.hpp:62
size_t mDelayLoadIndex
Definition WsfParseSequence.hpp:82
void UndoChildren(WsfParser &aParser, size_t aMaxIndex)
Definition WsfParseSequence.cpp:198
void AddRule(WsfParseRule *aRulePtr)
Definition WsfParseSequence.hpp:36
size_t FindChildIndex(WsfParseRule *aChildPtr)
Definition WsfParseSequence.hpp:57
bool mHasUndoValues
Definition WsfParseSequence.hpp:78
std::vector< WsfParseRule * > & ChangeSequence()
Definition WsfParseSequence.hpp:35
std::vector< WsfParseRule * > GetSequence() override
Definition WsfParseSequence.hpp:32
void SetAction(size_t aIndex, WsfParseAction *aActionPtr)
Definition WsfParseSequence.cpp:312
void Swap(WsfParseSequence &aRhs)
Definition WsfParseSequence.hpp:41
const std::vector< WsfParseRule * > & Sequence() const
Definition WsfParseSequence.hpp:34
int mNodeFlags
Definition WsfParseSequence.hpp:79
bool ReadRange(WsfParser &aParser, UtTextDocumentRange &aRange, WsfParseNode *&aNode, bool aCreateNode) override
Definition WsfParseSequence.cpp:143
WsfParseAction * TakeActionBefore(size_t aSequenceIndex)
Definition WsfParseSequence.hpp:48
bool Read(WsfParser &aParser, WsfParseNode *&aNode) override
Definition WsfParseSequence.cpp:50
void ResolveChildren(WsfParser &aParser, WsfParseNode *aNode)
Definition WsfParseSequence.cpp:187
WsfParseSequence(WsfParseRuleMemory &aMem)
Definition WsfParseSequence.cpp:32
bool mHasResolutionValues
Definition WsfParseSequence.hpp:77
bool CompleteDelayLoad(WsfParser &aParser, WsfParseNode *&aNode, WsfParseNode *aThisNodePtr)
Definition WsfParseSequence.cpp:229
~WsfParseSequence() override
Definition WsfParseSequence.cpp:42
std::string GetRuleDescription() override
Definition WsfParseSequence.cpp:213
WsfParseAction * GetActionBefore(size_t aSequenceIndex) const
Definition WsfParseSequence.hpp:43
std::vector< WsfParseRule * > mSequence
Definition WsfParseSequence.hpp:71
bool mSpecialCommand
Does the command require special handling.
Definition WsfParseSequence.hpp:76
std::vector< WsfParseAction * > mActions
Definition WsfParseSequence.hpp:72
void Initialize(int aSequence) override
Definition WsfParseSequence.cpp:152
bool HasActions() const
Definition WsfParseSequence.hpp:55
Definition WsfParser.hpp:36
void swap(WsfRoute &aLhs, WsfRoute &aRhs)
Definition WsfRoute.hpp:294