|
Blender V5.0
|
#include <shader_parser.hh>
Public Member Functions | |
| Token | start () const |
| Token | end () const |
| IndexRange | range () const |
| Token | operator[] (const int64_t index) const |
| size_t | token_count () const |
| ScopeType | type () const |
| Scope | scope () const |
| bool | is_valid () const |
| bool | is_invalid () const |
| bool | contains (const Scope sub) const |
| std::string | str () const |
| std::string | str_exclusive () const |
| Token | find_token (const char token_type) const |
| bool | contains_token (const char token_type) const |
| void | foreach_match (const std::string &pattern, std::function< void(const std::vector< Token >)> callback) const |
| void | foreach_scope (ScopeType type, std::function< void(Scope)> callback) const |
| void | foreach_token (const TokenType token_type, std::function< void(const Token)> callback) const |
| void | foreach_function (std::function< void(bool is_static, Token type, Token name, Scope args, bool is_const, Scope body)> callback) const |
| void | foreach_struct (std::function< void(Token struct_tok, Token name, Scope body)> callback) const |
| bool | operator== (const Scope &other) const |
| bool | operator!= (const Scope &other) const |
Static Public Member Functions | |
| static Scope | from_position (const ParserData *data, int64_t index) |
| static Scope | invalid () |
Public Attributes | |
| std::string_view | token_view |
| std::string_view | str_view |
| const ParserData * | data |
| int64_t | index |
Definition at line 718 of file shader_parser.hh.
|
inline |
Definition at line 787 of file shader_parser.hh.
References blender::gpu::shader::parser::Global, scope(), and type().
|
inline |
Definition at line 822 of file shader_parser.hh.
References find_token(), and blender::gpu::shader::parser::Token::is_valid().
|
inline |
Definition at line 742 of file shader_parser.hh.
References data, blender::gpu::shader::parser::Token::from_position(), and range().
Referenced by blender::gpu::shader::parser::Parser::erase(), blender::gpu::shader::parser::Parser::replace(), str(), and str_exclusive().
|
inline |
Definition at line 815 of file shader_parser.hh.
References data, blender::gpu::shader::parser::Token::from_position(), blender::gpu::shader::parser::Token::invalid(), pos, range(), size(), and start().
Referenced by contains_token().
|
inline |
Definition at line 916 of file shader_parser.hh.
References blender::gpu::shader::parser::Const, foreach_match(), name, scope(), blender::gpu::shader::parser::Static, and type().
|
inline |
Definition at line 827 of file shader_parser.hh.
References assert, data, blender::gpu::shader::parser::Token::from_position(), i, blender::gpu::shader::parser::Token::invalid(), pos, range(), size(), blender::gpu::shader::parser::IndexRange::start, and start().
Referenced by foreach_function(), blender::gpu::shader::parser::Parser::foreach_match(), foreach_struct(), and foreach_token().
|
inline |
Definition at line 892 of file shader_parser.hh.
References data, from_position(), pos, scope(), and type().
|
inline |
Definition at line 948 of file shader_parser.hh.
References foreach_match(), name, and scope().
|
inline |
Definition at line 909 of file shader_parser.hh.
References foreach_match(), and str().
|
inlinestatic |
Definition at line 726 of file shader_parser.hh.
References data, index, blender::gpu::shader::parser::IndexRange::last(), blender::gpu::shader::parser::IndexRange::size, and blender::gpu::shader::parser::IndexRange::start.
Referenced by blender::gpu::shader::parser::Parser::foreach_scope(), foreach_scope(), and blender::gpu::shader::parser::Token::scope().
|
inlinestatic |
Definition at line 773 of file shader_parser.hh.
Referenced by blender::gpu::shader::parser::Token::first_containing_scope_of_type().
|
inline |
Definition at line 782 of file shader_parser.hh.
References is_valid().
Referenced by str(), and str_exclusive().
|
inline |
Definition at line 778 of file shader_parser.hh.
Referenced by is_invalid().
|
inline |
Definition at line 968 of file shader_parser.hh.
|
inline |
Definition at line 964 of file shader_parser.hh.
Definition at line 752 of file shader_parser.hh.
References data, blender::gpu::shader::parser::Token::from_position(), index, range(), and start().
|
inline |
Definition at line 747 of file shader_parser.hh.
Referenced by end(), find_token(), foreach_match(), operator[](), start(), and token_count().
|
inline |
Definition at line 768 of file shader_parser.hh.
References blender::gpu::shader::parser::Token::prev(), blender::gpu::shader::parser::Token::scope(), and start().
Referenced by contains(), foreach_function(), foreach_scope(), and foreach_struct().
|
inline |
Definition at line 737 of file shader_parser.hh.
References data, blender::gpu::shader::parser::Token::from_position(), range(), and start().
Referenced by blender::gpu::shader::parser::Parser::erase(), find_token(), foreach_match(), operator[](), blender::gpu::shader::parser::Parser::replace(), scope(), start(), str(), and str_exclusive().
|
inline |
Definition at line 796 of file shader_parser.hh.
References end(), is_invalid(), start(), and blender::gpu::shader::parser::ParserData::str.
Referenced by foreach_token().
|
inline |
Definition at line 806 of file shader_parser.hh.
References end(), is_invalid(), start(), and blender::gpu::shader::parser::ParserData::str.
|
inline |
Definition at line 757 of file shader_parser.hh.
References range(), and blender::gpu::shader::parser::IndexRange::size.
|
inline |
Definition at line 762 of file shader_parser.hh.
Referenced by contains(), blender::gpu::shader::parser::Token::first_containing_scope_of_type(), foreach_function(), and foreach_scope().
| const ParserData* blender::gpu::shader::parser::Scope::data |
Definition at line 723 of file shader_parser.hh.
Referenced by end(), find_token(), foreach_match(), foreach_scope(), from_position(), is_valid(), operator==(), operator[](), range(), start(), and type().
| int64_t blender::gpu::shader::parser::Scope::index |
Definition at line 724 of file shader_parser.hh.
Referenced by from_position(), is_valid(), operator==(), operator[](), range(), and type().
| std::string_view blender::gpu::shader::parser::Scope::str_view |
Definition at line 721 of file shader_parser.hh.
| std::string_view blender::gpu::shader::parser::Scope::token_view |
Definition at line 720 of file shader_parser.hh.