Flutter Engine
The Flutter Engine
|
#include <SkSLInterfaceBlock.h>
Public Member Functions | |
InterfaceBlock (Position pos, Variable *var) | |
~InterfaceBlock () override | |
Variable * | var () const |
void | detachDeadVariable () |
std::string_view | typeName () const |
std::string_view | instanceName () const |
int | arraySize () const |
std::string | description () const override |
Public Member Functions inherited from SkSL::ProgramElement | |
ProgramElement (Position pos, Kind kind) | |
Kind | kind () const |
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< InterfaceBlock > | Convert (const Context &context, Position pos, const Modifiers &modifiers, std::string_view typeName, skia_private::TArray< Field > fields, std::string_view varName, int arraySize) |
static std::unique_ptr< InterfaceBlock > | Make (const Context &context, Position pos, Variable *variable) |
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::kInterfaceBlock |
Additional Inherited Members | |
Public Types inherited from SkSL::ProgramElement | |
using | Kind = ProgramElementKind |
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 |
An interface block, as in:
out sk_PerVertex { layout(builtin=0) float4 sk_Position; layout(builtin=1) float sk_PointSize; };
At the IR level, this is represented by a single variable of struct type.
Definition at line 38 of file SkSLInterfaceBlock.h.
Definition at line 42 of file SkSLInterfaceBlock.h.
|
override |
Definition at line 34 of file SkSLInterfaceBlock.cpp.
|
inline |
Definition at line 88 of file SkSLInterfaceBlock.h.
|
static |
Definition at line 52 of file SkSLInterfaceBlock.cpp.
|
overridevirtual |
Implements SkSL::IRNode.
Definition at line 140 of file SkSLInterfaceBlock.cpp.
|
inline |
Definition at line 76 of file SkSLInterfaceBlock.h.
|
inline |
Definition at line 84 of file SkSLInterfaceBlock.h.
|
static |
Definition at line 116 of file SkSLInterfaceBlock.cpp.
|
inline |
Definition at line 80 of file SkSLInterfaceBlock.h.
|
inline |
Definition at line 72 of file SkSLInterfaceBlock.h.
|
inlinestaticconstexpr |
Definition at line 40 of file SkSLInterfaceBlock.h.