Flutter Engine
The Flutter Engine
|
#include <SkSLVariable.h>
Classes | |
struct | ScratchVariable |
Public Types | |
using | Storage = VariableStorage |
Public Types inherited from SkSL::Symbol | |
using | Kind = SymbolKind |
Public Member Functions | |
Variable (Position pos, Position modifiersPosition, ModifierFlags modifierFlags, std::string_view name, const Type *type, bool builtin, Storage storage) | |
~Variable () override | |
ModifierFlags | modifierFlags () const |
virtual const Layout & | layout () const |
Position | modifiersPosition () const |
bool | isBuiltin () const |
Storage | storage () const |
const Expression * | initialValue () const |
VarDeclaration * | varDeclaration () const |
void | setVarDeclaration (VarDeclaration *declaration) |
GlobalVarDeclaration * | globalVarDeclaration () const |
void | setGlobalVarDeclaration (GlobalVarDeclaration *global) |
void | detachDeadVarDeclaration () |
virtual InterfaceBlock * | interfaceBlock () const |
virtual void | setInterfaceBlock (InterfaceBlock *) |
virtual void | detachDeadInterfaceBlock () |
virtual std::string_view | mangledName () const |
std::string | description () const override |
Public Member Functions inherited from SkSL::Symbol | |
Symbol (Position pos, Kind kind, std::string_view name, const Type *type=nullptr) | |
~Symbol () override | |
std::unique_ptr< Expression > | instantiate (const Context &context, Position pos) const |
const Type & | type () const |
Kind | kind () const |
std::string_view | name () const |
void | setName (std::string_view newName) |
Public Member Functions inherited from SkSL::IRNode | |
virtual | ~IRNode () |
virtual std::string | description () const =0 |
IRNode (const IRNode &)=delete | |
IRNode & | operator= (const IRNode &)=delete |
Position | position () const |
void | setPosition (Position p) |
template<typename T > | |
bool | is () const |
template<typename T > | |
const T & | as () const |
template<typename T > | |
T & | as () |
Static Public Member Functions | |
static std::unique_ptr< Variable > | Convert (const Context &context, Position pos, Position modifiersPos, const Layout &layout, ModifierFlags flags, const Type *type, Position namePos, std::string_view name, Storage storage) |
static std::unique_ptr< Variable > | Make (Position pos, Position modifiersPosition, const Layout &layout, ModifierFlags flags, const Type *type, std::string_view name, std::string mangledName, bool builtin, Storage storage) |
static ScratchVariable | MakeScratchVariable (const Context &context, Mangler &mangler, std::string_view baseName, const Type *type, SymbolTable *symbolTable, std::unique_ptr< Expression > initialValue) |
Static Public Member Functions inherited from SkSL::Poolable | |
static void * | operator new (const size_t size) |
static void | operator delete (void *ptr) |
Static Public Attributes | |
static constexpr Kind | kIRNodeKind = Kind::kVariable |
Additional Inherited Members | |
Public Attributes inherited from SkSL::IRNode | |
Position | fPosition |
Protected Member Functions inherited from SkSL::IRNode | |
IRNode (Position position, int kind) | |
Protected Attributes inherited from SkSL::IRNode | |
int | fKind |
Represents a variable, whether local, global, or a function parameter. This represents the variable itself (the storage location), which is shared between all VariableReferences which read or write that storage location.
Definition at line 48 of file SkSLVariable.h.
Definition at line 50 of file SkSLVariable.h.
|
inline |
Definition at line 54 of file SkSLVariable.h.
|
override |
Definition at line 31 of file SkSLVariable.cpp.
|
static |
Definition at line 92 of file SkSLVariable.cpp.
|
inlineoverridevirtual |
Implements SkSL::IRNode.
Definition at line 134 of file SkSLVariable.h.
|
inlinevirtual |
|
inline |
Definition at line 117 of file SkSLVariable.h.
GlobalVarDeclaration * SkSL::Variable::globalVarDeclaration | ( | ) | const |
Definition at line 61 of file SkSLVariable.cpp.
const Expression * SkSL::Variable::initialValue | ( | ) | const |
Definition at line 45 of file SkSLVariable.cpp.
|
inlinevirtual |
Reimplemented in SkSL::ExtendedVariable.
Definition at line 125 of file SkSLVariable.h.
|
inline |
Definition at line 99 of file SkSLVariable.h.
|
virtual |
|
static |
Definition at line 145 of file SkSLVariable.cpp.
|
static |
Definition at line 180 of file SkSLVariable.cpp.
|
inlinevirtual |
|
inline |
Definition at line 89 of file SkSLVariable.h.
|
inline |
Definition at line 95 of file SkSLVariable.h.
void SkSL::Variable::setGlobalVarDeclaration | ( | GlobalVarDeclaration * | global | ) |
Definition at line 79 of file SkSLVariable.cpp.
|
inlinevirtual |
Reimplemented in SkSL::ExtendedVariable.
Definition at line 127 of file SkSLVariable.h.
void SkSL::Variable::setVarDeclaration | ( | VarDeclaration * | declaration | ) |
Definition at line 72 of file SkSLVariable.cpp.
|
inline |
Definition at line 103 of file SkSLVariable.h.
VarDeclaration * SkSL::Variable::varDeclaration | ( | ) | const |
Definition at line 50 of file SkSLVariable.cpp.
|
inlinestaticconstexpr |
Definition at line 52 of file SkSLVariable.h.