RazorDocument - [0..40)::40 - [LF@custom TSomething where TElse : class]
    MarkupBlock - [0..40)::40
        MarkupTextLiteral - [0..2)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:Any
            NewLine;[LF];
        CSharpCodeBlock - [2..27)::25
            RazorDirective - [2..27)::25 - Directive:{custom;SingleLine;Unrestricted} [RZ1039(27:1,25 [5] )]
                CSharpTransition - [2..3)::1 - Gen<None> - SpanEditHandler;Accepts:None
                    Transition;[@];
                RazorDirectiveBody - [3..27)::24
                    RazorMetaCode - [3..9)::6 - Gen<None> - SpanEditHandler;Accepts:None
                        Identifier;[custom];
                    CSharpCodeBlock - [9..27)::18
                        CSharpStatementLiteral - [9..10)::1 - [ ] - Gen<None> - SpanEditHandler;Accepts:Whitespace
                            Whitespace;[ ];
                        CSharpStatementLiteral - [10..20)::10 - [TSomething] - Gen<DirectiveToken {;Member;Opt:False}> - DirectiveTokenEditHandler;Accepts:NonWhitespace
                            Identifier;[TSomething];
                        CSharpStatementLiteral - [20..21)::1 - [ ] - Gen<None> - SpanEditHandler;Accepts:Whitespace
                            Whitespace;[ ];
                        CSharpStatementLiteral - [21..27)::6 - [where ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
                            Keyword;[where];
                            Whitespace;[ ];
        MarkupTextLiteral - [27..40)::13 - [TElse : class] - Gen<Markup> - SpanEditHandler;Accepts:Any
            Text;[TElse];
            Whitespace;[ ];
            Text;[:];
            Whitespace;[ ];
            Text;[class];
