pub struct InitialPipelineState {Show 32 fields
pub id: PipelineId,
pub browsing_context_id: BrowsingContextId,
pub webview_id: WebViewId,
pub parent_pipeline_id: Option<PipelineId>,
pub opener: Option<BrowsingContextId>,
pub script_to_constellation_chan: ScriptToConstellationChan,
pub script_to_embedder_chan: ScriptToEmbedderChan,
pub namespace_request_sender: GenericSender<PipelineNamespaceRequest>,
pub background_monitor_register: Option<Box<dyn BackgroundHangMonitorRegister>>,
pub background_hang_monitor_to_constellation_chan: GenericSender<HangMonitorAlert>,
pub layout_factory: Arc<dyn LayoutFactory>,
pub compositor_proxy: CompositorProxy,
pub devtools_sender: Option<Sender<DevtoolsControlMsg>>,
pub bluetooth_thread: IpcSender<BluetoothRequest>,
pub system_font_service: Arc<SystemFontServiceProxy>,
pub resource_threads: ResourceThreads,
pub storage_threads: StorageThreads,
pub time_profiler_chan: ProfilerChan,
pub mem_profiler_chan: ProfilerChan,
pub viewport_details: ViewportDetails,
pub theme: Theme,
pub pipeline_namespace_id: PipelineNamespaceId,
pub event_loop: Option<Rc<EventLoop>>,
pub load_data: LoadData,
pub prev_throttled: bool,
pub webgl_chan: Option<WebGLPipeline>,
pub webxr_registry: Option<Registry>,
pub player_context: WindowGLContext,
pub broken_image_icon_data: Vec<u8>,
pub user_content_manager: UserContentManager,
pub privileged_urls: Vec<ServoUrl>,
pub image_cache_factory: Arc<dyn ImageCacheFactory>,
}Expand description
Initial setup data needed to construct a pipeline.
DO NOT add any Senders to this unless you absolutely know what you’re doing, or pcwalton will have to rewrite your code. Use IPC senders instead.
Fields§
§id: PipelineIdThe ID of the pipeline to create.
browsing_context_id: BrowsingContextIdThe ID of the browsing context that contains this Pipeline.
webview_id: WebViewIdThe ID of the top-level browsing context that contains this Pipeline.
parent_pipeline_id: Option<PipelineId>The ID of the parent pipeline and frame type, if any.
If None, this is the root.
opener: Option<BrowsingContextId>§script_to_constellation_chan: ScriptToConstellationChanA channel to the associated constellation.
script_to_embedder_chan: ScriptToEmbedderChanA channel to the embedder.
namespace_request_sender: GenericSender<PipelineNamespaceRequest>A sender to request pipeline namespace ids.
background_monitor_register: Option<Box<dyn BackgroundHangMonitorRegister>>A handle to register components for hang monitoring. None when in multiprocess mode.
background_hang_monitor_to_constellation_chan: GenericSender<HangMonitorAlert>A channel for the background hang monitor to send messages to the constellation.
layout_factory: Arc<dyn LayoutFactory>A fatory for creating layouts to be used by the ScriptThread.
compositor_proxy: CompositorProxyA channel to the compositor.
devtools_sender: Option<Sender<DevtoolsControlMsg>>A channel to the developer tools, if applicable.
bluetooth_thread: IpcSender<BluetoothRequest>A channel to the bluetooth thread.
system_font_service: Arc<SystemFontServiceProxy>A proxy to the system font service, responsible for managing the list of system fonts.
resource_threads: ResourceThreadsChannels to the resource-related threads.
storage_threads: StorageThreadsChannels to the storage-related threads.
time_profiler_chan: ProfilerChanA channel to the time profiler thread.
mem_profiler_chan: ProfilerChanA channel to the memory profiler thread.
viewport_details: ViewportDetailsThe initial ViewportDetails to use when starting this new Pipeline.
theme: Theme§pipeline_namespace_id: PipelineNamespaceIdThe ID of the pipeline namespace for this script thread.
event_loop: Option<Rc<EventLoop>>The event loop to run in, if applicable.
load_data: LoadDataInformation about the page to load.
prev_throttled: boolWhether the browsing context in which pipeline is embedded is throttled, using less resources by stopping animations and running timers at a heavily limited rate. This field is only used to notify script and compositor threads after spawning a pipeline.
webgl_chan: Option<WebGLPipeline>A channel to the WebGL thread.
webxr_registry: Option<Registry>The XR device registry
player_context: WindowGLContextApplication window’s GL Context for Media player
broken_image_icon_data: Vec<u8>The image bytes associated with the BrokenImageIcon embedder resource.
user_content_manager: UserContentManagerUser content manager
privileged_urls: Vec<ServoUrl>A list of URLs that can access privileged internal APIs.
image_cache_factory: Arc<dyn ImageCacheFactory>The ImageCacheFactory used for the single-process mode.
Auto Trait Implementations§
impl Freeze for InitialPipelineState
impl !RefUnwindSafe for InitialPipelineState
impl !Send for InitialPipelineState
impl !Sync for InitialPipelineState
impl Unpin for InitialPipelineState
impl !UnwindSafe for InitialPipelineState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more