Directive block - Gen<Directive:{custom;CodeBlock;Unrestricted}> - 32 - (0:0,0)
    Transition span - Gen<None> - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Tokens:1
        CSharpTokenType.Transition;[@];
    MetaCode span - Gen<None> - [custom] - SpanEditHandler;Accepts:None - (1:0,1) - Tokens:1
        CSharpTokenType.Identifier;[custom];
    Markup span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (7:0,7) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;String;Opt:False}> - ["Name"] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (8:0,8) - Tokens:1
        CSharpTokenType.StringLiteral;["Name"];
    Markup span - Gen<None> - [ ] - SpanEditHandler;Accepts:AllWhiteSpace - (14:0,14) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    MetaCode span - Gen<None> - [{] - AutoCompleteEditHandler;Accepts:None,AutoComplete:[<null>];AtEnd - (15:0,15) - Tokens:1
        CSharpTokenType.LeftBrace;[{];
    Code span - Gen<Stmt> - [ foo(); bar(); ] - CodeBlockEditHandler;Accepts:Any;CodeBlock - (16:0,16) - Tokens:11
        CSharpTokenType.WhiteSpace;[ ];
        CSharpTokenType.Identifier;[foo];
        CSharpTokenType.LeftParenthesis;[(];
        CSharpTokenType.RightParenthesis;[)];
        CSharpTokenType.Semicolon;[;];
        CSharpTokenType.WhiteSpace;[ ];
        CSharpTokenType.Identifier;[bar];
        CSharpTokenType.LeftParenthesis;[(];
        CSharpTokenType.RightParenthesis;[)];
        CSharpTokenType.Semicolon;[;];
        CSharpTokenType.WhiteSpace;[ ];
    MetaCode span - Gen<None> - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Tokens:1
        CSharpTokenType.RightBrace;[}];
