Bienvenue sur la nouvelle documentation de CppUtils !
Fonctions & utilitaires
FUNCTIONSNamespace: CppUtils::Language::Lexer
Énumérations publiques
Section intitulée « Énumérations publiques »RecurrenceType
Section intitulée « RecurrenceType »enum class RecurrenceType { Optional, EqualTo, MoreThan, MoreOrEqualTo};Types publics
Section intitulée « Types publics »ParsingFunction
Section intitulée « ParsingFunction »using CppUtils::Language::Lexer::ParsingFunction = typedef std::function<bool(Context<Types...>&)>;BreakPointLexeme
Section intitulée « BreakPointLexeme »using CppUtils::Language::Lexer::BreakPointLexeme = typedef Typed<BreakPointLexemeType, void>;StringLexeme
Section intitulée « StringLexeme »using CppUtils::Language::Lexer::StringLexeme = typedef Typed<StringLexemeType, std::string>;ParserLexeme
Section intitulée « ParserLexeme »using CppUtils::Language::Lexer::ParserLexeme = typedef Typed<ParserLexemeType, NamedParser<Types...> >;TokenLexeme
Section intitulée « TokenLexeme »using CppUtils::Language::Lexer::TokenLexeme = typedef Typed<TokenLexemeType, Type::Token>;TagLexeme
Section intitulée « TagLexeme »using CppUtils::Language::Lexer::TagLexeme = typedef Typed<TagLexemeType, std::unique_ptr<ILexeme> >;MutedLexeme
Section intitulée « MutedLexeme »using CppUtils::Language::Lexer::MutedLexeme = typedef Typed<MutedLexemeType, std::unique_ptr<ILexeme> >;RecurrentLexeme
Section intitulée « RecurrentLexeme »using CppUtils::Language::Lexer::RecurrentLexeme = typedef Typed<RecurrentLexemeType, Recurrence>;AlternativeLexeme
Section intitulée « AlternativeLexeme »using CppUtils::Language::Lexer::AlternativeLexeme = typedef Typed<AlternativeLexemeType, Alternative>;ExcludeLexeme
Section intitulée « ExcludeLexeme »using CppUtils::Language::Lexer::ExcludeLexeme = typedef Typed<ExcludeLexemeType, Exclusion>;Méthodes et fonctions publiques
Section intitulée « Méthodes et fonctions publiques »template <class Element = char>auto parseLexeme(String::Cursor<std::basic_string_view<Element>> &cursor, std::reference_wrapper<Container::ASTNode<Element>> &parentNode, Container::AST<Element> &ast, const Container::ASTNode<Element> &lexeme, const Container::AST<Element> &grammar, std::vector<Container::ASTNode<Element>> &memory) -> bool;template <class Element = char>auto parseLexemes(String::Cursor<std::basic_string_view<Element>> &cursor, std::reference_wrapper<Container::ASTNode<Element>> &parentNode, Container::AST<Element> &ast, const Container::ASTNode<Element> &lexeme, const Container::AST<Element> &grammar, std::vector<Container::ASTNode<Element>> &memory) -> bool;template <class Element = char>auto parseDeclaration(String::Cursor<std::basic_string_view<Element>> &cursor, std::reference_wrapper<Container::ASTNode<Element>> &parentNode, Container::AST<Element> &ast, const Container::ASTNode<Element> &declaration, const Container::AST<Element> &grammar, std::vector<Container::ASTNode<Element>> &memory) -> bool;template <class Element = char>auto parseMultipleDeclaration(String::Cursor<std::basic_string_view<Element>> &cursor, std::reference_wrapper<Container::ASTNode<Element>> &parentNode, Container::AST<Element> &ast, const Container::ASTNode<Element> &declarationLexeme, const Container::AST<Element> &grammar, std::vector<Container::ASTNode<Element>> &memory) -> bool;template <class CharT = char>auto parse(std::basic_string_view<CharT> src, const Container::AST<CharT> &grammar) -> Container::AST<CharT>;template <class... Types>NamedParser(std::string, ParsingFunction<Types...>) -> NamedParser<Types...>;template <class... Types>NamedParser(std::string, bool(Context<Types...> &)) -> NamedParser<Types...>;template <class... Types>or(std::same_as<std::string, Types> or ...) inline auto keywordParser(Context<Types...> &context) -> bool;template <class... Types>auto delimiterParser(Context<Types...> &context, std::string_view delimiter, std::type_identity_t<ParsingFunction<Types...>> contentParsingFunction, bool multipleContent, bool skipDelimiter) -> bool;template <class... Types>auto stringParser(Context<Types...> &context, std::string_view delimiter, bool skipDelimiter) -> bool;template <class... Types>and(std::same_as<Type::Token, Types> or ...) inline auto stringToTokenModifier(Context<Types...> &context) -> bool;Constantes & variables
Section intitulée « Constantes & variables »BreakPointLexemeType
Section intitulée « BreakPointLexemeType »constexpr auto CppUtils::Language::Lexer::BreakPointLexemeType;StringLexemeType
Section intitulée « StringLexemeType »constexpr auto CppUtils::Language::Lexer::StringLexemeType;ParserLexemeType
Section intitulée « ParserLexemeType »constexpr auto CppUtils::Language::Lexer::ParserLexemeType;TokenLexemeType
Section intitulée « TokenLexemeType »constexpr auto CppUtils::Language::Lexer::TokenLexemeType;TagLexemeType
Section intitulée « TagLexemeType »constexpr auto CppUtils::Language::Lexer::TagLexemeType;MutedLexemeType
Section intitulée « MutedLexemeType »constexpr auto CppUtils::Language::Lexer::MutedLexemeType;RecurrentLexemeType
Section intitulée « RecurrentLexemeType »constexpr auto CppUtils::Language::Lexer::RecurrentLexemeType;AlternativeLexemeType
Section intitulée « AlternativeLexemeType »constexpr auto CppUtils::Language::Lexer::AlternativeLexemeType;ExcludeLexemeType
Section intitulée « ExcludeLexemeType »constexpr auto CppUtils::Language::Lexer::ExcludeLexemeType;