prostomarkeloff / vkwave

Asynchronous framework for building high-performance & easy to scale projects interacting with VK's API.
MIT License
236 stars 34 forks source link

vkwave-bots-fsm: Добавил возможность указать параметр `state` как `filters.NO_STATE` в `filters.StateFilter` #151

Closed jieggii closed 3 years ago

jieggii commented 3 years ago

Фильтр, созданный так:

from vkwave.bots.fsm import StateFilter, ForWhat, NO_STATE, FiniteStateMachine

fsm = FiniteStateMachine()
StateFilter(fsm=fsm, state=NO_STATE, for_what=ForWhat.FOR_USER)

Будет возвращать True только тогда, когда у fsm еще нет никакого state. Лично мне, в моем проекте, данный функционал был нужен, думаю, и кому-то другому может пригодиться!

Типы изменений - [ ] Багфикс (обратно-совместимое изменение, исправляющее ишью) - [x] Новый функционал (обратно-совместимое изменение, добавляющее что-то новое) - [ ] Кардинальное изменение (фикс или фишка, ломающая обратную совместимость) - [x] Я прочел **CONTRIBUTING**. - [x] Я прочел **CODE_OF_CONDUCT**. - [x] Мой код соответствует принятому в проекте стилю кода. - [ ] Мои изменения требуют изменений в документации. - [ ] Я обновил документацию. - [ ] Я добавил тесты на мои изменения. - [ ] Все новые и уже существующие тесты проходят.