// Acquires a mutex-locked reference to the singleton ModuleLoader. When the ModuleLoader is // allowed to fall out of scope, the mutex will be released. static ModuleLoader Get();
// The built-in types and root module are universal, immutable, and shared by every Compiler. // They are created when the ModuleLoader is instantiated and never change. const BuiltinTypes& builtinTypes(); const Module* rootModule();
// These modules are loaded on demand; once loaded, they are kept for the lifetime of the // process. const Module* loadSharedModule(SkSL::Compiler* compiler); const Module* loadGPUModule(SkSL::Compiler* compiler); const Module* loadVertexModule(SkSL::Compiler* compiler); const Module* loadFragmentModule(SkSL::Compiler* compiler); const Module* loadComputeModule(SkSL::Compiler* compiler); const Module* loadGraphiteVertexModule(SkSL::Compiler* compiler); const Module* loadGraphiteFragmentModule(SkSL::Compiler* compiler);
// This updates an existing Module's symbol table to match Runtime Effect rules. GLSL types like // `vec4` are added; SkSL private types like `sampler2D` are replaced with an invalid type. void addPublicTypeAliases(const SkSL::Module* module);
// This unloads every module. It's useful primarily for benchmarking purposes. void unloadModules();
};
} // namespace SkSL
#endif// SKSL_MODULELOADER
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-08-26)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.