Fortran-FOSS-Programmers / Fortran-FOSS-Programmers/ford
Graphs with long edge labels become degenerated
- Dominant language
- Python
- Stars
- 458
- Forks
- 138
- PR merge metrics
- No merged PRs in 30d
Description
If a derived type has many components of the same type, inheritance graphs becomes degenerated, as edges length depends on length of label. In order to handle this, I added linebreaks. Additionally items from the label list are dropped if there are too many (more than 3 lines of width 40 required).
Here is a contrived example module
```
module test
implicit none
private
type, public :: t0
end type t0
type, extends(t0), public :: t1
end type t1
type, public :: t2
type(t1) :: component_1
type(t1) :: component_2
type(t1) :: component_3
type(t1) :: component_4
type(t1) :: component_5
type(t1) :: component_6
type(t1) :: component_7
type(t1) :: component_8
type(t1) :: component_9
end type t2
type, extends(t2), public :: t3
end type t3
type, extends(t3), public :: t4
end type t4
end module test
```
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file, test, or entry point is named in the issue. Reproduce the supplied Fortran module and inspect the inheritance-graph generation path to find how long edge labels are laid out and truncated. Done means the graph no longer degenerates while retaining the stated line-break and label-list behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- documentation
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100