keiro-dsl-0.17.0.0: test/fixtures/nested-nominal-guard-optional-path.keiro
language keiro-dsl 6
context nested-nominal-guard-optional-path
id TemplateId prefix=template
id ClaimId prefix=claim
mapped structural record GuardState {
haskell package=keiro-dsl module=Negative.NestedNominal.Domain type=GuardState
binding = "Negative.NestedNominal.Bindings.guardStateBinding"
binding-version = "1"
canonical-type = "negative.nested-nominal.GuardState.v1"
fixtures = "Negative.NestedNominal.Bindings.guardStateFixtures"
wire object constructor=GuardState unknown-fields=reject {
templateId as "templateId" : TemplateId required
holder as "holder" : Optional ClaimId optional on-missing=null
}
}
aggregate GuardedCatalog
regs
activeTemplateId TemplateId = placeholder
states Open Closed!
command Compare { state:GuardState claimId:ClaimId }
event Compared = fields(Compare)
Open -- Compare -->
guard cmd.state.holder == cmd.claimId
emit Compared
goto Closed
wire kind=ctorName fields=camelCase schemaVersion=1