#pragma once #include #include "Parsing/Commands/Impl/CommandsParserValue.h" #include "Parsing/Matcher/AbstractMatcherFactory.h" class CommandsMatcherFactory final : public AbstractMatcherFactory { public: explicit CommandsMatcherFactory(const IMatcherForLabelSupplier* labelSupplier); _NODISCARD MatcherFactoryWrapper Type(CommandsParserValueType type) const; _NODISCARD MatcherFactoryWrapper Keyword(std::string value) const; _NODISCARD MatcherFactoryWrapper Identifier() const; _NODISCARD MatcherFactoryWrapper Integer() const; _NODISCARD MatcherFactoryWrapper FloatingPoint() const; _NODISCARD MatcherFactoryWrapper Char(char c) const; };