| 208 | |
| 209 | protected: |
| 210 | inline void Run(const char* data, size_t len, bool addBegin, bool addEnd) noexcept { |
| 211 | if (addBegin) { |
| 212 | NPire::Step(GetScanner(), State, NPire::BeginMark); |
| 213 | } |
| 214 | NPire::Run(GetScanner(), State, data, data + len); |
| 215 | if (addEnd) { |
| 216 | NPire::Step(GetScanner(), State, NPire::EndMark); |
| 217 | } |
| 218 | } |
| 219 | |
| 220 | inline const typename TFsm::TScanner& GetScanner() const noexcept { |
| 221 | return Fsm.GetScanner(); |