#proton/manifest

moonbit-community/proton/manifest defines the runtime manifest types shared by bootstrap, native handoff, and the root facade.

It is a data package. Parsing belongs in bootstrap; application lifecycle belongs in the root proton facade.

AppEntry

pub(all) enum AppEntry {
Html(String)
Url(String)
File(String)
Asset(String)
} derive(Eq,
Debug
)

Declarative entry content loaded into a Proton application window.
impl Show for AppEntry

AppEntry::equal

fn AppEntry::equal(AppEntry, AppEntry) -> Bool

AppEntry::not_equal

fn AppEntry::not_equal(x : AppEntry, y : AppEntry) -> Bool

AppEntry::output

fn AppEntry::output(self : AppEntry, logger : &Logger) -> Unit

AppEntry::to_repr

AppEntry::to_string

fn AppEntry::to_string(self : AppEntry) -> String

AppManifest

pub struct AppManifest {
window : WindowManifest
entry : AppEntry
windows : Array[AppWindowManifest]
debug : Int
}

Declarative application manifest consumed by the runtime.

AppManifest::AppManifest

fn AppManifest::AppManifest(window : WindowManifest, entry : AppEntry, debug? : Int, windows? : Array[AppWindowManifest]) -> AppManifest

Builds an app manifest. The defaults match the minimal declarative shape accepted by bootstrap so callers can opt into debug, extra windows, or extensions incrementally.

AppWindowManifest

pub struct AppWindowManifest {
id : String
window : WindowManifest
entry : AppEntry
open_on_start : Bool
} derive(Eq,
Debug
)

Declarative secondary window entry consumed by runtime manifests.

AppWindowManifest::AppWindowManifest

fn AppWindowManifest::AppWindowManifest(id : String, window : WindowManifest, entry : AppEntry, open_on_start? : Bool) -> AppWindowManifest

Builds a declarative secondary window entry. Secondary windows keep their own id, window settings, and entry payload in the manifest document.

AppWindowManifest::equal

AppWindowManifest::not_equal

fn AppWindowManifest::not_equal(x : AppWindowManifest, y : AppWindowManifest) -> Bool

AppWindowManifest::output

fn AppWindowManifest::output(self : AppWindowManifest, logger : &Logger) -> Unit

AppWindowManifest::to_string

fn AppWindowManifest::to_string(self : AppWindowManifest) -> String

TitlebarStyle

pub(all) enum TitlebarStyle {
Default
Overlay
} derive(Eq,
Debug
)

Controls whether web content remains below or extends beneath the native titlebar. Platforms without overlay support keep the default titlebar.

TitlebarStyle::equal

TitlebarStyle::not_equal

fn TitlebarStyle::not_equal(x : TitlebarStyle, y : TitlebarStyle) -> Bool

TitlebarStyle::output

fn TitlebarStyle::output(self : TitlebarStyle, logger : &Logger) -> Unit

TitlebarStyle::to_string

fn TitlebarStyle::to_string(self : TitlebarStyle) -> String

WindowManifest

pub struct WindowManifest {
title : String
width : Int
height : Int
size_hint : WindowSizeHint
titlebar_style : TitlebarStyle
} derive(Eq,
Debug
)

Declarative window settings consumed by runtime manifests.

WindowManifest::WindowManifest

fn WindowManifest::WindowManifest(title : String, width : Int, height : Int, size_hint? : WindowSizeHint, titlebar_style? : TitlebarStyle) -> WindowManifest

Builds a manifest window configuration. This is the declarative window shape consumed by bootstrap and later turned into runtime WindowConfig values.

WindowManifest::equal

WindowManifest::not_equal

fn WindowManifest::not_equal(x : WindowManifest, y : WindowManifest) -> Bool

WindowManifest::output

fn WindowManifest::output(self : WindowManifest, logger : &Logger) -> Unit

WindowManifest::to_string

fn WindowManifest::to_string(self : WindowManifest) -> String

WindowSizeHint

pub(all) enum WindowSizeHint {
None
Fixed
Min
Max
} derive(Eq,
Debug
)

Declarative sizing hint used by manifest windows.

WindowSizeHint::equal

WindowSizeHint::not_equal

fn WindowSizeHint::not_equal(x : WindowSizeHint, y : WindowSizeHint) -> Bool

WindowSizeHint::output

fn WindowSizeHint::output(self : WindowSizeHint, logger : &Logger) -> Unit

WindowSizeHint::to_string

fn WindowSizeHint::to_string(self : WindowSizeHint) -> String

Powered by MoonBit

Site sourceReport issuePackagesBuild queueSkillsStatistics

© 2026 mooncakes.io