Flutter Engine
 
Loading...
Searching...
No Matches
impeller::compiler::UniqueIncluder Class Referencefinal

Wraps a shared includer so unique includers may be created to satisfy the shaderc API. This is a simple proxy object and does nothing. More...

Inheritance diagram for impeller::compiler::UniqueIncluder:

Public Member Functions

 ~UniqueIncluder ()=default
 
shaderc_include_result * GetInclude (const char *requested_source, shaderc_include_type type, const char *requesting_source, size_t include_depth) override
 
void ReleaseInclude (shaderc_include_result *data) override
 

Static Public Member Functions

static std::unique_ptr< UniqueIncluderMake (std::shared_ptr< Includer > includer)
 

Detailed Description

Wraps a shared includer so unique includers may be created to satisfy the shaderc API. This is a simple proxy object and does nothing.

Definition at line 235 of file spirv_compiler.cc.

Constructor & Destructor Documentation

◆ ~UniqueIncluder()

impeller::compiler::UniqueIncluder::~UniqueIncluder ( )
default

Member Function Documentation

◆ GetInclude()

shaderc_include_result * impeller::compiler::UniqueIncluder::GetInclude ( const char *  requested_source,
shaderc_include_type  type,
const char *  requesting_source,
size_t  include_depth 
)
inlineoverride

Definition at line 248 of file spirv_compiler.cc.

251 {
252 return includer_->GetInclude(requested_source, //
253 type, //
254 requesting_source, //
255 include_depth //
256 );
257 }
GLenum type

References type.

◆ Make()

static std::unique_ptr< UniqueIncluder > impeller::compiler::UniqueIncluder::Make ( std::shared_ptr< Includer includer)
inlinestatic

Definition at line 237 of file spirv_compiler.cc.

238 {
239 // NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks)
240 return std::unique_ptr<UniqueIncluder>(
241 new UniqueIncluder(std::move(includer)));
242 }

Referenced by impeller::compiler::SPIRVCompilerOptions::BuildShadercOptions().

◆ ReleaseInclude()

void impeller::compiler::UniqueIncluder::ReleaseInclude ( shaderc_include_result *  data)
inlineoverride

Definition at line 260 of file spirv_compiler.cc.

260 {
261 return includer_->ReleaseInclude(data);
262 }
std::shared_ptr< const fml::Mapping > data

References data.


The documentation for this class was generated from the following file: