Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
- data DoublyTypedGrammar a b = DoublyTypedGrammar {}
- occurrenceRelation :: [NamedProduction (TypedGraphMorphism a b)] -> Relation
- generateDoublyTypedGrammar :: RuleSequence (TypedGraphMorphism a b) -> DoublyTypedGrammar a b
- uniqueOrigin :: [NamedProduction (TypedGraphMorphism a b)] -> Bool
- findConcreteTrigger :: DoublyTypedGrammar a b -> Interaction -> (Interaction, RelationItem)
- calculateNacRelations :: DoublyTypedGrammar a b -> Set Interaction -> DoublyTypedGrammar a b
- strictRelation :: [NamedProduction (TypedGraphMorphism a b)] -> Relation
- creationAndDeletionRelation :: NamedProduction (TypedGraphMorphism a b) -> Relation
- getElements :: DoublyTypedGrammar a b -> (Set RelationItem, Set RelationItem)
- initialGraph :: DoublyTypedGrammar a b -> TypedGraph a b
- finalGraph :: DoublyTypedGrammar a b -> TypedGraph a b
- emptyRestrictions :: DoublyTypedGrammar a b -> Bool
Documentation
data DoublyTypedGrammar a b Source #
DoublyTypedGrammar | |
|
occurrenceRelation :: [NamedProduction (TypedGraphMorphism a b)] -> Relation Source #
generateDoublyTypedGrammar :: RuleSequence (TypedGraphMorphism a b) -> DoublyTypedGrammar a b Source #
Given a rule sequence, it calculates its underlying doubly-typed graph grammar
uniqueOrigin :: [NamedProduction (TypedGraphMorphism a b)] -> Bool Source #
findConcreteTrigger :: DoublyTypedGrammar a b -> Interaction -> (Interaction, RelationItem) Source #
Given an doubly typed grammar and an interaction of the types ProduceForbid or DeleteForbid between two rules it returns the interaction together with the element that triggered the NAC involved in this conflict or dependency
calculateNacRelations :: DoublyTypedGrammar a b -> Set Interaction -> DoublyTypedGrammar a b Source #
strictRelation :: [NamedProduction (TypedGraphMorphism a b)] -> Relation Source #
getElements :: DoublyTypedGrammar a b -> (Set RelationItem, Set RelationItem) Source #
Given an doubly typed grammar, it returns a tuple (rs,es)
where rs
is the set of rule names in this grammar
and es
is the set of elements that appear in the rules
initialGraph :: DoublyTypedGrammar a b -> TypedGraph a b Source #
Given an doubly typed grammar, it returns its initial graph
finalGraph :: DoublyTypedGrammar a b -> TypedGraph a b Source #
Given an doubly typed grammar, it returns its final graph
emptyRestrictions :: DoublyTypedGrammar a b -> Bool Source #
Checks whether the restrict relation of an doubly typed grammar is empty