This file implements linker that links two partial schemas (RFC 116).
- actionEntityTypeDeclared
(ety : Spec.EntityType)
: LinkError
An entity type has the same name as the type of an action.
- duplicateEntityType
(ety : Spec.EntityType)
: LinkError
Both partial schemas define the entity type.
- duplicateAction
(uid : Spec.EntityUID)
: LinkError
Both partial schemas define the action.
- externalIsEnum
(ety : Spec.EntityType)
: LinkError
An external entity type links to an enumerated entity type.
- externalAncestorsNotInDefinition
(ety : Spec.EntityType)
: LinkError
An external entity has ancestors absent from its definition.
- externalAncestorIsEnum
(ety : Spec.EntityType)
: LinkError
An external entity type has an enumerated entity type among its ancestors.
- definedEntityAncestorsChanged
(ety : Spec.EntityType)
: LinkError
Linking would add ancestors to a defined entity type.
- externalActionParentsMismatch
(uid : Spec.EntityUID)
: LinkError
Two declarations of an action have different parents.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.duplicateEntityType ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.externalIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.externalAncestorIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.externalIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.externalAncestorIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateEntityType ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.duplicateEntityType ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction a) (Cedar.Validation.LinkError.duplicateAction b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.externalIsEnum ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.externalAncestorIsEnum ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.duplicateAction uid) (Cedar.Validation.LinkError.externalActionParentsMismatch uid_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.duplicateEntityType ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum a) (Cedar.Validation.LinkError.externalIsEnum b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.externalAncestorIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalIsEnum ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.duplicateEntityType ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.externalIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.externalAncestorIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.duplicateEntityType ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.externalIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalAncestorIsEnum ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.duplicateEntityType ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.duplicateAction uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.externalIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.externalAncestorIsEnum ety_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) (Cedar.Validation.LinkError.externalActionParentsMismatch uid) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.actionEntityTypeDeclared ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.duplicateEntityType ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.duplicateAction uid_1) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.externalIsEnum ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.externalAncestorsNotInDefinition ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.externalAncestorIsEnum ety) = isFalse ⋯
- Cedar.Validation.instDecidableEqLinkError.decEq (Cedar.Validation.LinkError.externalActionParentsMismatch uid) (Cedar.Validation.LinkError.definedEntityAncestorsChanged ety) = isFalse ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
One round of closure, which adds the current ancestors of every member.
The result is well-formed when every set in m is.
Equations
- One or more equations did not get rendered due to their size.
Instances For
At most n rounds of closure, stopping as soon as a round changes nothing.
Each round looks up ancestors in the previous round's map, so reach doubles
and the closure is reached after logarithmically many rounds; the key count
closeAncestors passes is a far looser bound.
Equations
Instances For
Close each set of parents under the parent relation, so it holds all ancestors. The number of keys bounds the rounds needed.
Equations
- Cedar.Validation.closeAncestors parents = Cedar.Validation.closeAncestorsIter parents.size parents
Instances For
Close entity ancestors if doing so does not change a defined entity. Error if taking closure causes any completed entity ancestor to enlarge. Error if an external entity type has an enumerated ancestor, which no definition of it could list.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Link a single PartialEntitySchemaEntry. Error when both are not external. Error when the defined entity is Enum. Error when an external ancestor is absent from the entity's definition.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Link a single PartialActionSchemaEntry. Error when both are not external. Error when they do not have the same ancestors.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Entity names from both first and second are linked. Entity names appearing in only one of them are appended.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Link two partial schemas. Error if partial schema have colliding names across action types and entity types.
Equations
- One or more equations did not get rendered due to their size.