8#ifndef SKSL_INTERFACEBLOCK
9#define SKSL_INTERFACEBLOCK
56 static std::unique_ptr<InterfaceBlock>
Convert(
const Context& context,
61 std::string_view varName,
68 static std::unique_ptr<InterfaceBlock>
Make(
const Context& context,
85 return fVariable->
name();
InterfaceBlock(Position pos, Variable *var)
static std::unique_ptr< InterfaceBlock > Make(const Context &context, Position pos, Variable *variable)
~InterfaceBlock() override
void detachDeadVariable()
std::string description() const override
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 constexpr Kind kIRNodeKind
std::string_view instanceName() const
std::string_view typeName() const
ProgramElement(Position pos, Kind kind)
std::string_view name() const
const Type & type() const
virtual bool isArray() const
virtual const Type & componentType() const
virtual bool isInterfaceBlock() const
virtual int columns() const
virtual void setInterfaceBlock(InterfaceBlock *)