Experimental Sun CPU raster renderer provider for MoUI
Dependencies
fn SunCachedLayerAdmissionDiagnostic::churn_without_hit(self : SunCachedLayerAdmissionDiagnostic) -> Boolfn SunCachedLayerAdmissionDiagnostic::identity_key(self : SunCachedLayerAdmissionDiagnostic) -> Stringfn SunCachedLayerAdmissionDiagnostic::not_equal(x : SunCachedLayerAdmissionDiagnostic, y : SunCachedLayerAdmissionDiagnostic) -> Boolfn SunCachedLayerAdmissionDiagnostic::skip_reason(self : SunCachedLayerAdmissionDiagnostic) -> Stringfn SunCachedLayerAdmissionDiagnostic::update_streak(self : SunCachedLayerAdmissionDiagnostic) -> Intpub struct SunCachedLayerAdmissionRecord {
identity_key : String
update_streak : Int
hit_count : Int
skip_reason : String
last_revision : Int
}fn SunCachedLayerDiagnostic::admission_records(self : SunCachedLayerDiagnostic) -> Array[SunCachedLayerAdmissionDiagnostic]fn SunCachedLayerDiagnostic::not_equal(x : SunCachedLayerDiagnostic, y : SunCachedLayerDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::deterministic_color_emoji_ready(self : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::emoji_fallback_attempted(self : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::fallback_language_tag_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::fallback_language_tags(self : SunEmojiFontFallbackDiagnostic) -> Array[String]fn SunEmojiFontFallbackDiagnostic::fallback_request_language_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::fallback_request_ready(self : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::fallback_script_tag(self : SunEmojiFontFallbackDiagnostic) -> Stringfn SunEmojiFontFallbackDiagnostic::fallback_span_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::missing_glyph_recovery_ready(self : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::not_equal(x : SunEmojiFontFallbackDiagnostic, y : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::registered_font_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::registered_font_fallback_ready(self : SunEmojiFontFallbackDiagnostic) -> Boolfn SunEmojiFontFallbackDiagnostic::requested_font_family(self : SunEmojiFontFallbackDiagnostic) -> Stringfn SunEmojiFontFallbackDiagnostic::resolved_face_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::resolved_fallback_face_index(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunEmojiFontFallbackDiagnostic::resolved_font_name(self : SunEmojiFontFallbackDiagnostic) -> Stringfn SunEmojiFontFallbackDiagnostic::resolved_missing_glyph_count(self : SunEmojiFontFallbackDiagnostic) -> Intfn SunPresentTarget::new(description~ : String, present~ : (SunPixelFrame) -> Bool) -> SunPresentTargetpub struct SunRasterRenderer {
metrics : SurfaceMetrics
target : SunPresentTarget
canvas : Canvas
present_count : Int
unsupported_command_count : Int
unsupported_command_diagnostics : Array[SunUnsupportedCommandDiagnostic]
last_frame : SunPixelFrame?
text_system : TextSystem
resources : RendererResources
image_lifecycle : ImageResourceLifecycle
async_image_loading : Bool
canvas_stack : Array[Canvas]
filter_stack : Array[PaintFilter]
cached_layer_pixmaps : Map[String, Pixmap]
cached_layer_revisions : Map[String, Int]
cached_layer_scales : Map[String, Double]
cached_layer_order : Array[String]
cached_layer_hit_count : Int
cached_layer_miss_count : Int
cached_layer_update_count : Int
cached_layer_evict_count : Int
cached_layer_admissions : Array[SunCachedLayerAdmissionRecord]
blur_radius_stack : Array[Double]
rounded_clip_stack : Array[RoundedRect]
platform_view_draw_fn : () -> Unit?
}fn SunRasterRenderer::apply_image_resource_load_completion(self : SunRasterRenderer, completion : ImageResourceLoadCompletion) -> Boolfn SunRasterRenderer::draw_platform_view_pixels(self : SunRasterRenderer, pixels : Bytes, src_width : Int, src_height : Int, src_stride : Int, dst_x : Double, dst_y : Double, dst_width : Double, dst_height : Double) -> Unitfn SunRasterRenderer::emoji_font_fallback_diagnostic(self : SunRasterRenderer, text? : String, font? : FontSpec) -> SunEmojiFontFallbackDiagnosticfn SunRasterRenderer::register_font_bytes(self : SunRasterRenderer, key : String, data : Bytes) -> Unitfn SunRasterRenderer::register_font_file(self : SunRasterRenderer, key : String, path : String, font_index? : Int) -> Unitfn SunRasterRenderer::render(self : SunRasterRenderer, commands : Array[DrawCommand]) -> Unit raise SunRendererErrorfn SunRasterRenderer::render_frame(self : SunRasterRenderer, frame : DrawFrame) -> RenderFrameResultfn SunRasterRenderer::resize(self : SunRasterRenderer, metrics : SurfaceMetrics) -> Unit raise SunRendererErrorfn SunRasterRenderer::set_platform_view_draw_fn(self : SunRasterRenderer, draw_fn : () -> Unit?) -> Unitfn SunRasterRenderer::text_maturity_diagnostic(self : SunRasterRenderer, text? : String, font? : FontSpec, max_width? : Double) -> SunTextMaturityDiagnosticfn SunRasterRenderer::text_selection_geometry_diagnostic(self : SunRasterRenderer, text? : String, selection? : TextRange?, font? : FontSpec, max_width? : Double) -> SunTextSelectionGeometryDiagnosticfn SunRasterRenderer::text_visual_order_diagnostic(self : SunRasterRenderer, text : String, font? : FontSpec, max_width? : Double) -> SunTextVisualOrderDiagnostic?fn SunRasterRenderer::to_renderer_session(self : SunRasterRenderer, image_source? : HostImageSource, image_decoder? : RendererImageDecoder?) -> RendererSessionfn SunRasterRenderer::unsupported_command_diagnostics(self : SunRasterRenderer) -> Array[SunUnsupportedCommandDiagnostic]fn SunTextMaturityDiagnostic::not_equal(x : SunTextMaturityDiagnostic, y : SunTextMaturityDiagnostic) -> Boolfn SunTextMaturityDiagnostic::unicode_17_grapheme_boundary_ready(self : SunTextMaturityDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::bidi_visual_order_observed(self : SunTextSelectionGeometryDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::bidi_visual_order_ready(self : SunTextSelectionGeometryDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::hit_test_inside(self : SunTextSelectionGeometryDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::hit_test_line_index(self : SunTextSelectionGeometryDiagnostic) -> Intfn SunTextSelectionGeometryDiagnostic::hit_test_offset(self : SunTextSelectionGeometryDiagnostic) -> Intfn SunTextSelectionGeometryDiagnostic::not_equal(x : SunTextSelectionGeometryDiagnostic, y : SunTextSelectionGeometryDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::selected_line_count(self : SunTextSelectionGeometryDiagnostic) -> Intfn SunTextSelectionGeometryDiagnostic::selection_range(self : SunTextSelectionGeometryDiagnostic) -> TextRangefn SunTextSelectionGeometryDiagnostic::selection_rect_count(self : SunTextSelectionGeometryDiagnostic) -> Intfn SunTextSelectionGeometryDiagnostic::visual_order_differs(self : SunTextSelectionGeometryDiagnostic) -> Boolfn SunTextSelectionGeometryDiagnostic::visual_segment_count(self : SunTextSelectionGeometryDiagnostic) -> Intfn SunTextVisualOrderDiagnostic::bidi_visual_order_ready(self : SunTextVisualOrderDiagnostic) -> Boolfn SunTextVisualOrderDiagnostic::equal(SunTextVisualOrderDiagnostic, SunTextVisualOrderDiagnostic) -> Boolfn SunTextVisualOrderDiagnostic::not_equal(x : SunTextVisualOrderDiagnostic, y : SunTextVisualOrderDiagnostic) -> Boolfn SunUnsupportedCommandDiagnostic::not_equal(x : SunUnsupportedCommandDiagnostic, y : SunUnsupportedCommandDiagnostic) -> Boolfn create_with_present_target(metrics : SurfaceMetrics, target : SunPresentTarget, async_image_loading? : Bool) -> SunRasterRenderer raise SunRendererErrorfn install_svg_text_path_resolver() -> Boolfn sun_image_load_completion_from_bytes(source : String, data : Bytes, background_io? : Bool) -> ImageResourceLoadCompletionInstall
Download zipExperimental Sun CPU raster renderer provider for MoUI
Dependencies