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