RFR: 8307652: sealed class hierarchy graph doesn't distinguish non-sealed classes
Chen Liang
liach at openjdk.org
Tue May 16 17:23:45 UTC 2023
On Mon, 15 May 2023 06:46:28 GMT, Per Minborg <pminborg at openjdk.org> wrote:
>> `@sealedGraph` had a mechanism to render non-sealed classes differently, but it's useless because the graph nodes are not bordered. This patch converts the non-sealed classes to be rendered in italics instead.
>>
>> An example of `ConstantDesc`, which has a sealed hierarchy except `DynamicConstantDesc`:
>> JDK 20:
>> 
>>
>> This patch:
>> 
>
> Thanks for this improvement suggestion. Indicating "openness" is certainly important. I was playing around with various ways of expressing it and came up with this:
>
> 
>
> What is your opinion on it? It might be slightly more intuitive? We could even do this:
>
> 
>
>
>
> Here is the code:
>
>
>
> digraph G {
>
> shape="none"
> rankdir = "BT"
>
> ClassDesc -> ConstantDesc
> MethodHandleDesc -> ConstantDesc
> DirectMethodHandleDesc -> MethodHandleDesc
> DynamicConstantDesc -> ConstantDesc
> Float -> ConstantDesc
> Hidden1 -> DynamicConstantDesc [style="dashed"]
>
> Hidden1 [label="<any>"]
>
> ClassDesc [shape=none];
> ConstantDesc [shape=none];
> MethodHandleDesc [shape=none];
> DynamicConstantDesc [shape=none];
> DirectMethodHandleDesc [shape=none];
> Float [shape=none];
> Hidden1 [shape=none];
> }
@minborg Done. I've made the `<any>` in italics and its hover label is "Non-sealed Hierarchy". Example images of ConstantDesc and CallSite:


In addition, the copyright year is updated to reflect the correct creation date of this taglet (2022 instead of 2017)
-------------
PR Comment: https://git.openjdk.org/jdk/pull/13877#issuecomment-1550071543
More information about the build-dev
mailing list