#include <compiler.h>
Public Member Functions | |
Compiler (const std::shared_ptr< const fml::Mapping > &source_mapping, const SourceOptions &options, Reflector::Options reflector_options) | |
~Compiler () | |
bool | IsValid () const |
std::shared_ptr< fml::Mapping > | GetSPIRVAssembly () const |
std::shared_ptr< fml::Mapping > | GetSLShaderSource () const |
std::string | GetErrorMessages () const |
const std::vector< std::string > & | GetIncludedFileNames () const |
std::unique_ptr< fml::Mapping > | CreateDepfileContents (std::initializer_list< std::string > targets) const |
const Reflector * | GetReflector () const |
Definition at line 24 of file compiler.h.
impeller::compiler::Compiler::Compiler | ( | const std::shared_ptr< const fml::Mapping > & | source_mapping, |
const SourceOptions & | options, | ||
Reflector::Options | reflector_options | ||
) |
Definition at line 280 of file compiler.cc.
References impeller::compiler::SPIRVCompilerOptions::BuildShadercOptions(), COMPILER_ERROR, impeller::compiler::SPIRVCompiler::CompileToSPV(), impeller::compiler::CreateCompiler(), impeller::CreateMappingWithString(), impeller::compiler::SourceOptions::defines, impeller::compiler::SPIRVCompilerTargetEnv::env, impeller::compiler::SPIRVCompilerOptions::generate_debug_info, GetSLShaderSource(), impeller::compiler::SourceOptions::include_dirs, impeller::compiler::SPIRVCompilerOptions::includer, impeller::compiler::kGLSL, impeller::compiler::kHLSL, impeller::compiler::kMaxUniformBufferSize, impeller::compiler::kMetalDesktop, impeller::compiler::kMetalIOS, impeller::compiler::kOpenGLDesktop, impeller::compiler::kOpenGLES, impeller::compiler::kRuntimeStageGLES, impeller::compiler::kRuntimeStageGLES3, impeller::compiler::kRuntimeStageMetal, impeller::compiler::kRuntimeStageVulkan, impeller::compiler::kSkSL, impeller::compiler::kUnknown, impeller::compiler::kVulkan, impeller::compiler::SPIRVCompilerOptions::macro_definitions, impeller::compiler::SPIRVCompilerOptions::optimization_level, impeller::compiler::SPIRVCompilerOptions::relaxed_vulkan_rules, impeller::compiler::SPIRVCompilerOptions::source_langauge, impeller::compiler::SourceOptions::source_language, impeller::compiler::SPIRVCompilerOptions::source_profile, impeller::compiler::SPIRVCompilerTargetEnv::spirv_version, impeller::compiler::SPIRVCompilerOptions::target, impeller::compiler::SourceOptions::target_platform, impeller::compiler::SourceOptions::use_half_textures, impeller::compiler::SPIRVCompilerTargetEnv::version, and impeller::compiler::SourceOptions::working_directory.
|
default |
std::unique_ptr< fml::Mapping > impeller::compiler::Compiler::CreateDepfileContents | ( | std::initializer_list< std::string > | targets | ) | const |
Definition at line 532 of file compiler.cc.
References impeller::compiler::JoinStrings().
Referenced by impeller::compiler::OutputDepfile().
std::string impeller::compiler::Compiler::GetErrorMessages | ( | ) | const |
Definition at line 504 of file compiler.cc.
Referenced by impeller::compiler::testing::CompilerTest::CanCompileAndReflect(), impeller::compiler::CompileSkSL(), impeller::compiler::GenerateShaderBackendFB(), impeller::compiler::Main(), and impeller::compiler::OutputIPLR().
const std::vector< std::string > & impeller::compiler::Compiler::GetIncludedFileNames | ( | ) | const |
Definition at line 508 of file compiler.cc.
const Reflector * impeller::compiler::Compiler::GetReflector | ( | ) | const |
std::shared_ptr< fml::Mapping > impeller::compiler::Compiler::GetSLShaderSource | ( | ) | const |
Definition at line 490 of file compiler.cc.
Referenced by impeller::compiler::testing::CompilerTest::CanCompileAndReflect(), Compiler(), and impeller::compiler::OutputSLFile().
std::shared_ptr< fml::Mapping > impeller::compiler::Compiler::GetSPIRVAssembly | ( | ) | const |
Definition at line 486 of file compiler.cc.
Referenced by impeller::compiler::testing::CompilerTest::CanCompileAndReflect(), impeller::compiler::Main(), and impeller::compiler::testing::TEST().
bool impeller::compiler::Compiler::IsValid | ( | ) | const |
Definition at line 494 of file compiler.cc.
Referenced by impeller::compiler::testing::CompilerTest::CanCompileAndReflect(), impeller::compiler::CompileSkSL(), impeller::compiler::GenerateShaderBackendFB(), impeller::compiler::Main(), and impeller::compiler::OutputIPLR().