pub struct BranchPoint {
pub id: BranchPointId,
pub opens_at: QuestId,
pub forks_on: Vec<FlagId>,
pub branches: Vec<BranchDecl>,
}Expand description
One declared story fork (DSL v0.8, spec-0025).
A branch point names the flag set the story forks on, the quest at which the
fork opens, and every branch it offers. Each branch pins the point’s whole
flag set: the flags it lists are set, and every other flag of forks_on
is not — which is what makes exclusive-content leakage (DW0484) and
per-branch cast resolution (DW0483) decidable instead of hopeful.
Fields§
§id: BranchPointIdUnique branch-point id.
opens_at: QuestIdThe quest at which the fork opens — every branch’s divergent content is at or after it in the stage-4 DAG.
forks_on: Vec<FlagId>The flag set the story forks on. Every branch’s flags is a subset of
this, and the flags it does not list are pinned unset on that branch.
branches: Vec<BranchDecl>The alternatives (≥ 2).
Trait Implementations§
Source§impl Clone for BranchPoint
impl Clone for BranchPoint
Source§impl Debug for BranchPoint
impl Debug for BranchPoint
Source§impl<'de> Deserialize<'de> for BranchPoint
impl<'de> Deserialize<'de> for BranchPoint
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for BranchPoint
impl JsonSchema for BranchPoint
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for BranchPoint
impl PartialEq for BranchPoint
Source§impl Serialize for BranchPoint
impl Serialize for BranchPoint
impl StructuralPartialEq for BranchPoint
Auto Trait Implementations§
impl Freeze for BranchPoint
impl RefUnwindSafe for BranchPoint
impl Send for BranchPoint
impl Sync for BranchPoint
impl Unpin for BranchPoint
impl UnsafeUnpin for BranchPoint
impl UnwindSafe for BranchPoint
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
Mutably borrows from an owned value. Read more