RazorDocument - [0..59)::59 - [@functions { public void Foo() { @Model!.Name![0]!?.Bar } }]
    MarkupBlock - [0..59)::59
        MarkupTextLiteral - [0..0)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
            Marker;[];
        CSharpCodeBlock - [0..59)::59
            RazorDirective - [0..59)::59 - Directive:{functions;CodeBlock;Unrestricted}
                CSharpTransition - [0..1)::1 - Gen<None> - SpanEditHandler;Accepts:None
                    Transition;[@];
                RazorDirectiveBody - [1..59)::58
                    RazorMetaCode - [1..10)::9 - Gen<None> - SpanEditHandler;Accepts:None
                        Identifier;[functions];
                    CSharpCodeBlock - [10..59)::49
                        UnclassifiedTextLiteral - [10..11)::1 - [ ] - Gen<None> - SpanEditHandler;Accepts:AllWhitespace
                            Whitespace;[ ];
                        RazorMetaCode - [11..12)::1 - Gen<None> - AutoCompleteEditHandler;Accepts:None,AutoComplete:[<null>];AtEnd
                            LeftBrace;[{];
                        CSharpCodeBlock - [12..58)::46
                            CSharpStatementLiteral - [12..33)::21 - [ public void Foo() { ] - Gen<Stmt> - CodeBlockEditHandler;Accepts:Any;CodeBlock
                                Whitespace;[ ];
                                Keyword;[public];
                                Whitespace;[ ];
                                Keyword;[void];
                                Whitespace;[ ];
                                Identifier;[Foo];
                                LeftParenthesis;[(];
                                RightParenthesis;[)];
                                Whitespace;[ ];
                                LeftBrace;[{];
                                Whitespace;[ ];
                            CSharpCodeBlock - [33..55)::22
                                CSharpImplicitExpression - [33..55)::22
                                    CSharpTransition - [33..34)::1 - Gen<None> - SpanEditHandler;Accepts:None
                                        Transition;[@];
                                    CSharpImplicitExpressionBody - [34..55)::21
                                        CSharpCodeBlock - [34..55)::21
                                            CSharpExpressionLiteral - [34..55)::21 - [Model!.Name![0]!?.Bar] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[ATD];K15
                                                Identifier;[Model];
                                                Not;[!];
                                                Dot;[.];
                                                Identifier;[Name];
                                                Not;[!];
                                                LeftBracket;[[];
                                                IntegerLiteral;[0];
                                                RightBracket;[]];
                                                Not;[!];
                                                QuestionMark;[?];
                                                Dot;[.];
                                                Identifier;[Bar];
                            CSharpStatementLiteral - [55..58)::3 - [ } ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
                                Whitespace;[ ];
                                RightBrace;[}];
                                Whitespace;[ ];
                        RazorMetaCode - [58..59)::1 - Gen<None> - SpanEditHandler;Accepts:None
                            RightBrace;[}];
        MarkupTextLiteral - [59..59)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
            Marker;[];
