This namespace contains element specific logic. It defines the different element categories of model elements and views and the hierarchical relationships. The namespace also defines predicates to query the elements and functionality requiring only elements or collections of elements without references to the model as a whole.
This namespace contains element specific logic. It defines the different element categories of model elements and views and the hierarchical relationships. The namespace also defines predicates to query the elements and functionality requiring only elements or collections of elements without references to the model as a whole.
Node types in the architecture model.
Node types in the architecture model.
(architecture-node? e)
Returns true if the given element e
is a architecture model node.
Returns true if the given element `e` is a architecture model node.
Relation types in the architecture model.
Relation types in the architecture model.
(architecture-relation? e)
Returns true if the given element e
is a architecture model relation.
Returns true if the given element `e` is a architecture model relation.
(boundary? e)
Returns true if e
is a boundary.
Returns true if `e` is a boundary.
(child? e p)
Returns true, if element e
is a child of model element p
.
Returns true, if element `e` is a child of model element `p`.
(children model e)
Returns the children of the element e
.
Returns the children of the element `e`.
(class-model-node? e)
Returns true if the given element e
is a class model node.
Returns true if the given element `e` is a class model node.
(class-model-relation? e)
Returns true if the given element e
is a class model relation.
Returns true if the given element `e` is a class model relation.
Relation types for class models.
Relation types for class models.
Element types of a class view.
Element types of a class view.
Element types of a C4 code view.
Element types of a C4 code view.
(collect-technologies coll)
Returns the set of technologies for the elements of the coll.
Returns the set of technologies for the elements of the coll.
Element types of a C4 component view.
Element types of a C4 component view.
(concept-model-node? e)
Returns true if the given element e
is a concept model node.
Returns true if the given element `e` is a concept model node.
(concept-model-relation? e)
Returns true if the given element e
is a concept model relation.
Returns true if the given element `e` is a concept model relation.
Node types for concept models.
Node types for concept models.
Relation types of concept models.
Relation types of concept models.
Element types of a concept view.
Element types of a concept view.
The set of concept views types.
The set of concept views types.
Element types of a C4 container view.
Element types of a C4 container view.
Element types of a C4 context view.
Element types of a C4 context view.
Node types for deployment models.
Node types for deployment models.
(deployment-node? e)
Returns true if the given element e
is a deployment model node.
Returns true if the given element `e` is a deployment model node.
Relation types for deployment models.
Relation types for deployment models.
(deployment-relation? e)
Returns true if the given element e
is a deployment model relation.
Returns true if the given element `e` is a deployment model relation.
Element types of a C4 deployment view.
Element types of a C4 deployment view.
(descendant-node? e c)
Returns true, if c
is a descendant of e
.
Returns true, if `c` is a descendant of `e`.
(descendant-nodes e)
Returns the set of descendants of the node e
.
Returns the set of descendants of the node `e`.
Element types of a C4 dynamic view.
Element types of a C4 dynamic view.
(element->ref e)
Returns a ref for the element e
, if it is identifiable.
Returns a ref for the element `e`, if it is identifiable.
Hierarchy for rendering methods.
Hierarchy for rendering methods.
(element-name e)
Returns the name of the element e
.
Returns the name of the element `e`.
(element-namespace e)
Returns the namespace of the element e
.
Returns the namespace of the element `e`.
(element? e)
Returns true if the given element e
has a type (:el key).
Returns true if the given element `e` has a type (:el key).
(elements-by-namespace coll)
Returns the elements of the coll
grouped by namespace.
Returns the elements of the `coll` grouped by namespace.
(external? e)
Returns true if the given element e
is external.
Returns true if the given element `e` is external.
(generate-node-id e p)
Generates an identifier for element e
based on the id of the parent p
.
The generated id takes the id of p
as prefix and appends the lowercase
name of e
and the element type of e
separated by a hyphen.
Generates an identifier for element `e` based on the id of the parent `p`. The generated id takes the id of `p` as prefix and appends the lowercase name of `e` and the element type of `e` separated by a hyphen.
(generate-relation-id {:keys [el from to]})
(generate-relation-id el from to)
Generates an identifier for a relation r
.
The generated id takes the id of the referrer as prefix and appends the relation type of the relation and the name part of the referred id separated by a hyphen.
Generates an identifier for a relation `r`. The generated id takes the id of the referrer as prefix and appends the relation type of the relation and the name part of the referred id separated by a hyphen.
Element types of a glossary view.
Element types of a glossary view.
The set of hierarchical view types.
The set of hierarchical view types.
(hierarchical-view? e)
Returns true if the given element e
is a hierarchical view.
Returns true if the given element `e` is a hierarchical view.
(id->element)
(id->element acc)
(id->element acc e)
Step function to create an id to element map.
Adds the association of the id of the element e
to the map acc
.
Step function to create an id to element map. Adds the association of the id of the element `e` to the map `acc`.
(id->parent)
(id->parent [res ctx])
(id->parent [res ctx] e)
Step function to create an id to parent element map.
Adds the association from the id of element e
to the parent p
to the map acc
.
Uses a list as stack in the accumulator to manage the context of the current element e
in the traversal of the tree.
Step function to create an id to parent element map. Adds the association from the id of element `e` to the parent `p` to the map `acc`. Uses a list as stack in the accumulator to manage the context of the current element `e` in the traversal of the tree.
(identifiable-element? e)
Returns true if the given element e
is an element and named.
Returns true if the given element `e` is an element and named.
(identifiable-named-element? e)
Returns true if the given element e
is an element, identifiable and named.
Returns true if the given element `e` is an element, identifiable and named.
(identifiable-relational-element? e)
Returns true if the given element e
is an identifiable relation.
Returns true if the given element `e` is an identifiable relation.
(identifiable? e)
Returns true if the given element e
has an ID (:id key).
Returns true if the given element `e` has an ID (:id key).
Returns a transducer to extract the id of each element.
Returns a transducer to extract the id of each element.
(internal? e)
Returns true if the given element e
is internal.
Returns true if the given element `e` is internal.
(key->element k)
Returns a step function to create an key k
to element map.
Adds the association of the id of the element e
to the map acc
.
Returns a step function to create an key `k` to element map. Adds the association of the id of the element `e` to the map `acc`.
(model-element? e)
Returns true if the given element e
is a model element.
Returns true if the given element `e` is a model element.
(model-node? e)
Returns true if the given element is a node in the model element graph. A model node is a model element which is not a relation.
Returns true if the given element is a node in the model element graph. A model node is a model element which is not a relation.
Relation types of the model.
Relation types of the model.
(model-relation? e)
Returns true if the given element e
is a relation.
Returns true if the given element `e` is a relation.
(named-element? e)
Returns true if the given element e
is an element and named.
Returns true if the given element `e` is an element and named.
(named-relational-element? e)
Returns true if the given element e
is a named relation.
Returns true if the given element `e` is a named relation.
(named? e)
Returns true if the given element e
has a name (:name key).
Returns true if the given element `e` has a name (:name key).
(namespaced? e)
Returns true, if the id of element e
has a namespace.
Returns true, if the id of element `e` has a namespace.
Returns a transducer to extract the namespaces of some elements.
Returns a transducer to extract the namespaces of some elements.
Returns a transducer to extract the id of each node.
Returns a transducer to extract the id of each node.
(node-of? kind e)
Returns true if the given element e
is a node of kind
.
Returns true if the given element `e` is a node of `kind`.
(reference? e)
Returns true if the given element e
is a reference.
Returns true if the given element `e` is a reference.
(referred-id->relation)
(referred-id->relation acc)
(referred-id->relation acc e)
Step function to create an map of referred ids to relations.
Adds the relation r
to the set associated with the id of the :to reference in the map acc
.
Step function to create an map of referred ids to relations. Adds the relation `r` to the set associated with the id of the :to reference in the map `acc`.
(referrer-id->relation)
(referrer-id->relation acc)
(referrer-id->relation acc e)
Step function to create an map of referrer ids to relations.
Adds the relation r
to the set associated with the id of the :from reference in the map acc
.
Step function to create an map of referrer ids to relations. Adds the relation `r` to the set associated with the id of the :from reference in the map `acc`.
(relation-of? kind e)
Returns true if the given element e
is a relation of kind
.
Returns true if the given element `e` is a relation of `kind`.
(relational-element? e)
Returns true if the given element e
is a relation.
Returns true if the given element `e` is a relation.
(relational? e)
Returns true if the given element e
is a relation.
Returns true if the given element `e` is a relation.
Element types of a state machine view.
Element types of a state machine view.
Node types for statemachine models.
Node types for statemachine models.
(statemachine-node? e)
Returns true if the given element e
is a statemachine model node.
Returns true if the given element `e` is a statemachine model node.
Relation types for statemachine models.
Relation types for statemachine models.
(statemachine-relation? e)
Returns true if the given element e
is a statemachine model relation.
Returns true if the given element `e` is a statemachine model relation.
Element types of a C4 system-landscape view.
Element types of a C4 system-landscape view.
(tech-collector)
(tech-collector acc)
(tech-collector acc e)
Step function to collect the technologies.
Adds the tech of e
to the accumulator acc
.
Step function to collect the technologies. Adds the tech of `e` to the accumulator `acc`.
(tech? e)
Returns true if the given element e
has a tech (:tech key).
Returns true if the given element `e` has a tech (:tech key).
Technical node types in the architecture model.
Technical node types in the architecture model.
(technical-architecture-node? e)
Returns true if the given element e
is a technical architecture model node.
Returns true if the given element `e` is a technical architecture model node.
(technologies e)
Returns a vector of the technologies used by the element e
.
Returns a vector of the technologies used by the element `e`.
(theme? e)
Returns true if the given element e
is a theme.
Returns true if the given element `e` is a theme.
(traverse step-fn coll)
(traverse select-fn step-fn coll)
Recursively traverses the coll
of elements and returns the elements (selected
by the optional select-fn
) and transformed by the step-fn
.
select-fn
- a predicate on the current element
step-fn
- a function with three signatures [], [acc] and [acc e]
The no args signature of the step-fn
should return an empty accumulator,
the one args signature extracts the result from the accumulator on return
and the 2 args signature receives the accumulator and the current element and
should add the transformed element to the accumulator.
Recursively traverses the `coll` of elements and returns the elements (selected by the optional `select-fn`) and transformed by the `step-fn`. `select-fn` - a predicate on the current element `step-fn` - a function with three signatures [], [acc] and [acc e] The no args signature of the `step-fn` should return an empty accumulator, the one args signature extracts the result from the accumulator on return and the 2 args signature receives the accumulator and the current element and should add the transformed element to the accumulator.
(tree->set)
(tree->set acc)
(tree->set acc e)
Step function to convert a hierarchical tree of elements to a flat set of elements.
Step function to convert a hierarchical tree of elements to a flat set of elements.
Relation types of UML models.
Relation types of UML models.
Element types of UML views.
Element types of UML views.
(union-by-id & sets)
Returns a set that is the union of the input sets
.
Equality is based on the id (:id key) of the element maps in the sets, not on value equality of the maps (entity equality vs. value equality).
Element maps with the same id will be merged in left-to-right order. If a key occurs in more than one map, the mapping from the latter (left-to-right) will be the mapping in the result
Returns a set that is the union of the input `sets`. Equality is based on the id (:id key) of the element maps in the sets, not on value equality of the maps (entity equality vs. value equality). Element maps with the same id will be merged in left-to-right order. If a key occurs in more than one map, the mapping from the latter (left-to-right) will be the mapping in the result
(unresolved-ref? e)
Returns true if the given element e
is a reference.
Returns true if the given element `e` is a reference.
Element types of a use case view.
Element types of a use case view.
Node types for usecase models.
Node types for usecase models.
(usecase-node? e)
Returns true if the given element e
is a usecase model node.
Returns true if the given element `e` is a usecase model node.
Relation types for usecase models.
Relation types for usecase models.
(usecase-relation? e)
Returns true if the given element e
is a usecase model relation.
Returns true if the given element `e` is a usecase model relation.
(value-xf k)
Returns a transducer to extract the value of the key k
of each element.
Returns a transducer to extract the value of the key `k` of each element.
(view-of? e kind)
Returns true if the given element e
is a view of kind
.
Returns true if the given element `e` is a view of `kind`.
(view? e)
Returns true if the given element e
is a view.
Returns true if the given element `e` is a view.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close