Document - 
    NamespaceDeclaration -  - Test
        UsingDirective - (3:1,1 [14] ) - System
        UsingDirective - (18:2,1 [34] ) - System.Collections.Generic
        UsingDirective - (53:3,1 [19] ) - System.Linq
        UsingDirective - (73:4,1 [30] ) - System.Threading.Tasks
        UsingDirective - (104:5,1 [35] ) - Microsoft.AspNetCore.Blazor
        UsingDirective - (140:6,1 [46] ) - Microsoft.AspNetCore.Blazor.Components
        ClassDeclaration -  - public - TestComponent - Microsoft.AspNetCore.Blazor.Components.BlazorComponent - 
            MethodDeclaration -  - protected override - void - BuildRenderTree
                CSharpCode - 
                    IntermediateToken -  - CSharp - base.BuildRenderTree(builder);
                ComponentExtensionNode - (31:1,0 [44] x:\dir\subdir\Test\TestComponent.cshtml) - MyComponent - Test.MyComponent<int>
                    ComponentTypeArgumentExtensionNode - (50:1,19 [3] x:\dir\subdir\Test\TestComponent.cshtml) - TItem
                        IntermediateToken - (50:1,19 [3] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - int
                    ComponentAttributeExtensionNode - (60:1,29 [1] x:\dir\subdir\Test\TestComponent.cshtml) - Item - Item
                        IntermediateToken - (60:1,29 [1] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - 3
                    RefExtensionNode - (68:1,37 [3] x:\dir\subdir\Test\TestComponent.cshtml) - _my - Test.MyComponent<int>
            CSharpCode - (91:3,12 [90] x:\dir\subdir\Test\TestComponent.cshtml)
                IntermediateToken - (91:3,12 [90] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n    private MyComponent<int> _my;\n    public void Foo() { System.GC.KeepAlive(_my); }\n
