Pycodeanalyzer diagram examples

The following diagram are example generated using Pycodeanlyzer. They may not be up to date, but are there to show the style of diagrams.

MermaidJS example

classDiagram class PlantUMLClassDiagramBuild { <<Class>> + List~AbstractClass~ klasses + List~AbstractEnum~ enums + List&lt;Tuple&lt;str,str&gt;&gt; relations + List&lt;Tuple&lt;str,str&gt;&gt; parents + AbstractObject target +Constructor() None +reset() None +createClass(AbstractClass target, List~AbstractClass~ linkedClasses, List~AbstractEnum~ linkedEnums, List~AbstractFunction~ linkedFunctions) None +createEnum(AbstractEnum target) None +build() str -addInheritance(AbstractClass target, AbstractObject linkedObject) None -addDependancy(AbstractObject target, AbstractObject linkedObject) None -addClass(AbstractClass abstractClass) None -addEnum(AbstractEnum abstractEnum) None -getVisibilityMark(str text) str -getTypeString(str type) str } class IClassDiagramBuild { <<Class>> + Any logger +Constructor(str name) None +reset() None +createClass(AbstractClass target, List~AbstractClass~ linkedClasses, List~AbstractEnum~ linkedEnums, List~AbstractFunction~ linkedFunctions) None +createEnum(AbstractEnum target) None +build() str } link IClassDiagramBuild "class££pycodeanalyzer::core::diagrams::iclassdiagrambuild::IClassDiagramBuild" class AbstractClass { <<Class>> + str namespace + str type + List&lt;Tuple&lt;str,str,str&gt;&gt; members + List&lt;Tuple&lt;str,str,List&lt;Tuple&lt;str,str&gt;&gt;,str&gt;&gt; methodes + List&lt;Tuple&lt;str,str,str&gt;&gt; parents + List~str~ linkedGenericTypes + List~AbstractClassClassifier~ classifiers +Constructor(str name, str namespace, str origin) None +addGenericType(str genType) None +addMember(str type, str name, str visibility) None +hasMember(str name) bool +addMethod(str returnType, str name, List&lt;Tuple&lt;str,str&gt;&gt; parameters, str visibility) None +addParent(str completetype, str name, str visibility) None +addClassifier(AbstractClassClassifier classifier) None +getMainClassifier() str +getLinkedTypes() List~str~ -isPotentialClassName(str type) bool -getDependanceFromType(str type) List~str~ -splitTypes(Any decl) List~str~ +getFullName() str -cleanLanguageArtifacts(str type) str -removeNonObjectTypes(List~str~ typeList) List~str~ +isParent(AbstractClass klass) bool +print() None } link AbstractClass "class££pycodeanalyzer::core::abstraction::objects::AbstractClass" class AbstractEnum { <<Class>> + str namespace + str type + List~str~ values +Constructor(str name, str namespace, str origin, List~str~ values) None +getFullName() str +print() None } link AbstractEnum "class££pycodeanalyzer::core::abstraction::objects::AbstractEnum" class AbstractFunction { <<Class>> + str namespace + str type + str returnType + List&lt;Tuple&lt;str,str&gt;&gt; parameters + str doxygen + List~str~ linkedGenericTypes +Constructor(str name, str origin, str returnType, List&lt;Tuple&lt;str,str&gt;&gt; parameters, str namespace, str doxygen) None +addGenericType(str genType) None +print() None +getFullDef() str } link AbstractFunction "class££pycodeanalyzer::core::abstraction::objects::AbstractFunction" class AbstractObject { <<Class>> + str name + str type + str origin + List~str~ usingNS + AbstractObjectLanguage objectLanguage + List~str~ linkedGenericTypes +Constructor(str name, str origin) None +addUsingNamespace(str namespace) None } link AbstractObject "class££pycodeanalyzer::core::abstraction::objects::AbstractObject" PlantUMLClassDiagramBuild --|> IClassDiagramBuild PlantUMLClassDiagramBuild ..> AbstractClass PlantUMLClassDiagramBuild ..> AbstractEnum PlantUMLClassDiagramBuild ..> AbstractFunction PlantUMLClassDiagramBuild ..> AbstractObject

PlantUML example

@startuml
class ClassDiagramBuild <<Class>>
{
+ List<AbstractClass> klasses
+ List<AbstractEnum> enums
+ List<Tuple<str,str>> relations
+ List<Tuple<str,str>> parents
+ AbstractObject target
+None Constructor()
+None reset()
+None createClass(AbstractClass target, List<AbstractClass> linkedClasses, List<AbstractEnum> linkedEnums, List<AbstractFunction> linkedFunctions)
+None createEnum(AbstractEnum target)
+str build()
-None addInheritance(AbstractClass target, AbstractObject linkedObject)
-None addDependancy(AbstractObject target, AbstractObject linkedObject)
-None addClass(AbstractClass abstractClass)
-None addEnum(AbstractEnum abstractEnum)
-str getVisibilityMark(str text)
-str getTypeString(str type)
}
class IClassDiagramBuild <<Class>>
{
+ Any logger
+None Constructor(str name)
+None reset()
+None createClass(AbstractClass target, List<AbstractClass> linkedClasses, List<AbstractEnum> linkedEnums, List<AbstractFunction> linkedFunctions)
+None createEnum(AbstractEnum target)
+str build()
}
class AbstractClass <<Class>>
{
+ str namespace
+ str type
+ List<Tuple<str,str,str>> members
+ List<Tuple<str,str,List<Tuple<str,str>>,str>> methodes
+ List<Tuple<str,str,str>> parents
+ List<str> linkedGenericTypes
+ List<AbstractClassClassifier> classifiers
+None Constructor(str name, str namespace, str origin)
+None addGenericType(str genType)
+None addMember(str type, str name, str visibility)
+bool hasMember(str name)
+None addMethod(str returnType, str name, List<Tuple<str,str>> parameters, str visibility)
+None addParent(str completetype, str name, str visibility)
+None addClassifier(AbstractClassClassifier classifier)
+str getMainClassifier()
+List<str> getLinkedTypes()
-bool isPotentialClassName(str type)
-List<str> getDependanceFromType(str type)
-List<str> splitTypes(Any decl)
+str getFullName()
-str cleanLanguageArtifacts(str type)
-List<str> removeNonObjectTypes(List<str> typeList)
+bool isParent(AbstractClass klass)
+None print()
}
class AbstractEnum <<Class>>
{
+ str namespace
+ str type
+ List<str> values
+None Constructor(str name, str namespace, str origin, List<str> values)
+str getFullName()
+None print()
}
class AbstractFunction <<Class>>
{
+ str namespace
+ str type
+ str returnType
+ List<Tuple<str,str>> parameters
+ str doxygen
+ List<str> linkedGenericTypes
+None Constructor(str name, str origin, str returnType, List<Tuple<str,str>> parameters, str namespace, str doxygen)
+None addGenericType(str genType)
+None print()
+str getFullDef()
}
class AbstractObject <<Class>>
{
+ str name
+ str type
+ str origin
+ List<str> usingNS
+ AbstractObjectLanguage objectLanguage
+ List<str> linkedGenericTypes
+None Constructor(str name, str origin)
+None addUsingNamespace(str namespace)
}
ClassDiagramBuild --|> IClassDiagramBuild
ClassDiagramBuild ..|> AbstractClass
ClassDiagramBuild ..|> AbstractEnum
ClassDiagramBuild ..|> AbstractFunction
ClassDiagramBuild ..|> AbstractObject
@enduml

More examples

Want to see more examples ?

Just have a look on Pycodeanlyzer code documentation. All the diagram visible there are generated using Pycodeanlyzer itself !