Documentation
SOURCE_FILE@0..91
  FN@0..90
    FN_KW@0..2 "fn"
    WHITESPACE@2..3 " "
    NAME@3..6
      IDENT@3..6 "foo"
    PARAM_LIST@6..8
      L_PAREN@6..7 "("
      R_PAREN@7..8 ")"
    WHITESPACE@8..9 " "
    BLOCK_EXPR@9..90
      STMT_LIST@9..90
        L_CURLY@9..10 "{"
        WHITESPACE@10..15 "\n    "
        LET_STMT@15..25
          LET_KW@15..18 "let"
          WHITESPACE@18..19 " "
          WILDCARD_PAT@19..20
            UNDERSCORE@19..20 "_"
          WHITESPACE@20..21 " "
          EQ@21..22 "="
          WHITESPACE@22..23 " "
          PATH_EXPR@23..24
            PATH@23..24
              PATH_SEGMENT@23..24
                NAME_REF@23..24
                  IDENT@23..24 "a"
          SEMICOLON@24..25 ";"
        WHITESPACE@25..30 "\n    "
        LET_STMT@30..43
          LET_KW@30..33 "let"
          WHITESPACE@33..34 " "
          WILDCARD_PAT@34..35
            UNDERSCORE@34..35 "_"
          WHITESPACE@35..36 " "
          EQ@36..37 "="
          WHITESPACE@37..38 " "
          PATH_EXPR@38..42
            PATH@38..42
              PATH@38..39
                PATH_SEGMENT@38..39
                  NAME_REF@38..39
                    IDENT@38..39 "a"
              COLON2@39..41 "::"
              PATH_SEGMENT@41..42
                NAME_REF@41..42
                  IDENT@41..42 "b"
          SEMICOLON@42..43 ";"
        WHITESPACE@43..48 "\n    "
        LET_STMT@48..65
          LET_KW@48..51 "let"
          WHITESPACE@51..52 " "
          WILDCARD_PAT@52..53
            UNDERSCORE@52..53 "_"
          WHITESPACE@53..54 " "
          EQ@54..55 "="
          WHITESPACE@55..56 " "
          PATH_EXPR@56..64
            PATH@56..64
              PATH_SEGMENT@56..64
                COLON2@56..58 "::"
                NAME_REF@58..59
                  IDENT@58..59 "a"
                GENERIC_ARG_LIST@59..64
                  COLON2@59..61 "::"
                  L_ANGLE@61..62 "<"
                  TYPE_ARG@62..63
                    PATH_TYPE@62..63
                      PATH@62..63
                        PATH_SEGMENT@62..63
                          NAME_REF@62..63
                            IDENT@62..63 "b"
                  R_ANGLE@63..64 ">"
          SEMICOLON@64..65 ";"
        WHITESPACE@65..70 "\n    "
        LET_STMT@70..88
          LET_KW@70..73 "let"
          WHITESPACE@73..74 " "
          WILDCARD_PAT@74..75
            UNDERSCORE@74..75 "_"
          WHITESPACE@75..76 " "
          EQ@76..77 "="
          WHITESPACE@77..78 " "
          MACRO_CALL@78..87
            PATH@78..84
              PATH_SEGMENT@78..84
                NAME_REF@78..84
                  IDENT@78..84 "format"
            BANG@84..85 "!"
            TOKEN_TREE@85..87
              L_PAREN@85..86 "("
              R_PAREN@86..87 ")"
          SEMICOLON@87..88 ";"
        WHITESPACE@88..89 "\n"
        R_CURLY@89..90 "}"
  WHITESPACE@90..91 "\n"