|
VapourSynth-llvmexpr
|
Namespaces | |
| namespace | preprocessor_detail |
| namespace | preprocessor |
| namespace | detail |
| namespace | stdlib |
Typedefs | |
| template<typename T> | |
| using | node_wrapper_t = typename NodeWrapper<T>::type |
| using | Token = preprocessor_detail::Token |
| using | TokenType = preprocessor_detail::TokenType |
| using | PreprocessorTokenizer = preprocessor_detail::PreprocessorTokenizer |
| using | AllStandardLibraries |
| template<IsLibrary Lib> | |
| using | ResolveLibraryDependencies |
Enumerations | |
| enum class | DiagnosticSeverity : std::uint8_t { Error , Warning } |
| enum class | PostfixMode : std::uint8_t { Expr , SingleExpr } |
| enum class | SymbolKind : std::uint8_t { Variable , Function , Parameter , Label } |
| enum class | Type : std::uint8_t { Value , Clip , Literal , LiteralString , Array , Void } |
| enum class | TokenType : std::uint8_t { If , Else , While , Goto , Function , Return , Plus , Minus , Star , Slash , Percent , StarStar , LogicalAnd , LogicalOr , BitAnd , BitOr , BitXor , BitNot , Eq , Ne , Lt , Le , Gt , Ge , Assign , Question , Colon , Not , LParen , RParen , LBrace , RBrace , LBracket , RBracket , Comma , Dot , Semicolon , Identifier , Number , Global , Newline , EndOfFile , Invalid } |
| enum class | Mode : std::uint8_t { Expr , Single , VkExpr } |
| enum class | GlobalMode : std::uint8_t { None , All , Specific } |
Functions | |
| template<typename T, typename... Args> | |
| auto | make_node (Args &&... args) |
| template<typename T, typename Wrapper> | |
| auto | get_if (Wrapper *wrapper) -> decltype(std::get_if< T >(&wrapper->value)) |
| const std::map< std::string, std::vector< BuiltinFunction > > & | get_builtin_functions () |
| bool | is_convertible (Type from, Type to, Mode mode) |
| template<typename T> | |
| const OverloadCandidate< T > * | select_best_candidate (std::vector< OverloadCandidate< T > > &candidates) |
| template<typename T> | |
| bool | is_ambiguous (const std::vector< OverloadCandidate< T > > &candidates, const OverloadCandidate< T > *best) |
| template<typename T, typename ArgTypeGetter, typename ParamTypeGetter> | |
| std::vector< OverloadCandidate< T > > | compute_candidates (const std::vector< T > &overloads, size_t arg_count, ArgTypeGetter get_arg_type, ParamTypeGetter get_param_type, Mode mode) |
| int | compute_postfix_stack_effect (const std::string &postfix_expr, PostfixMode mode, int line, int num_inputs, int num_intermediate_inputs) |
| std::string | token_type_to_string (TokenType type) |
| template<FixedString Prefix> | |
| std::optional< int > | get_index_with_prefix (const std::string &s) |
| template<FixedString Prefix> | |
| bool | is_name (const std::string &s) |
| std::optional< int > | get_clip_index (const std::string &s) |
| bool | is_clip_name (const std::string &s) |
| std::optional< int > | get_buffer_index (const std::string &s) |
| bool | is_buffer_name (const std::string &s) |
Variables | |
| template<class T, class V> | |
| constexpr bool | IS_VARIANT_MEMBER_V = is_variant_member<T, V>::value |
| constexpr std::array | TOKEN_MAPPINGS |
Copyright (C) 2025 yuygfgg
This file is part of Vapoursynth-llvmexpr.
Vapoursynth-llvmexpr is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Vapoursynth-llvmexpr is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Vapoursynth-llvmexpr. If not, see https://www.gnu.org/licenses/.
Definition at line 39 of file StandardLibrary.hpp.
| using infix2postfix::node_wrapper_t = typename NodeWrapper<T>::type |
Definition at line 486 of file Preprocessor.cpp.
| using infix2postfix::ResolveLibraryDependencies |
Definition at line 97 of file StandardLibrary.hpp.
| using infix2postfix::Token = preprocessor_detail::Token |
Definition at line 484 of file Preprocessor.cpp.
Definition at line 485 of file Preprocessor.cpp.
|
strong |
| Enumerator | |
|---|---|
| Error | |
| Warning | |
Definition at line 33 of file AnalysisEngine.hpp.
|
strong |
|
strong |
|
strong |
| Enumerator | |
|---|---|
| Expr | |
| SingleExpr | |
Definition at line 28 of file PostfixHelper.hpp.
|
strong |
|
strong |
Definition at line 66 of file types.hpp.
|
strong |
| std::vector< OverloadCandidate< T > > infix2postfix::compute_candidates | ( | const std::vector< T > & | overloads, |
| size_t | arg_count, | ||
| ArgTypeGetter | get_arg_type, | ||
| ParamTypeGetter | get_param_type, | ||
| Mode | mode ) |
Definition at line 84 of file OverloadResolution.hpp.
References is_convertible().
| int infix2postfix::compute_postfix_stack_effect | ( | const std::string & | postfix_expr, |
| PostfixMode | mode, | ||
| int | line, | ||
| int | num_inputs, | ||
| int | num_intermediate_inputs ) |
Definition at line 28 of file PostfixHelper.cpp.
References Expr, Expr, get_token_behavior(), SingleExpr, TokenBehavior::stack_effect, tokenize(), and VkExpr.
|
inline |
Definition at line 267 of file types.hpp.
References get_index_with_prefix().
| const std::map< std::string, std::vector< BuiltinFunction > > & infix2postfix::get_builtin_functions | ( | ) |
Definition at line 400 of file Builtins.cpp.
|
inline |
Definition at line 256 of file types.hpp.
References get_index_with_prefix(), and parse_std_clip_idx().
Referenced by is_clip_name().
| auto infix2postfix::get_if | ( | Wrapper * | wrapper | ) | -> decltype(std::get_if< T >(&wrapper->value)) |
Definition at line 442 of file AST.hpp.
Referenced by infix2postfix::SemanticAnalyzer::analyze().
|
inline |
Definition at line 228 of file types.hpp.
Referenced by get_buffer_index(), get_clip_index(), and is_name().
| bool infix2postfix::is_ambiguous | ( | const std::vector< OverloadCandidate< T > > & | candidates, |
| const OverloadCandidate< T > * | best ) |
Definition at line 68 of file OverloadResolution.hpp.
References infix2postfix::OverloadCandidate< T >::conversion_count, and infix2postfix::OverloadCandidate< T >::first_conversion_index.
|
inline |
|
inline |
Definition at line 263 of file types.hpp.
References get_clip_index().
Definition at line 31 of file OverloadResolution.hpp.
References Array, Clip, LiteralString, Single, Value, and Void.
Referenced by compute_candidates().
|
inline |
Definition at line 252 of file types.hpp.
References get_index_with_prefix().
Referenced by is_buffer_name().
| auto infix2postfix::make_node | ( | Args &&... | args | ) |
| const OverloadCandidate< T > * infix2postfix::select_best_candidate | ( | std::vector< OverloadCandidate< T > > & | candidates | ) |
Definition at line 48 of file OverloadResolution.hpp.
References infix2postfix::OverloadCandidate< T >::conversion_count, and infix2postfix::OverloadCandidate< T >::first_conversion_index.
|
inline |
Definition at line 171 of file types.hpp.
References Number, and TOKEN_MAPPINGS.
|
inlineconstexpr |
|
constexpr |
Definition at line 126 of file types.hpp.
Referenced by token_type_to_string().