ra_ap_syntax 0.0.84

Comment and whitespace preserving parser for the Rust language
Documentation
SOURCE_FILE@0..42
  FN@0..41
    FN_KW@0..2 "fn"
    WHITESPACE@2..3 " "
    NAME@3..7
      IDENT@3..7 "main"
    PARAM_LIST@7..9
      L_PAREN@7..8 "("
      R_PAREN@8..9 ")"
    WHITESPACE@9..10 " "
    BLOCK_EXPR@10..41
      STMT_LIST@10..41
        L_CURLY@10..11 "{"
        WHITESPACE@11..16 "\n    "
        EXPR_STMT@16..24
          CLOSURE_EXPR@16..24
            PARAM_LIST@16..18
              PIPE@16..17 "|"
              PIPE@17..18 "|"
            WHITESPACE@18..19 " "
            RET_TYPE@19..24
              THIN_ARROW@19..21 "->"
              WHITESPACE@21..22 " "
              TUPLE_TYPE@22..24
                L_PAREN@22..23 "("
                R_PAREN@23..24 ")"
        WHITESPACE@24..25 " "
        EXPR_STMT@25..39
          BLOCK_EXPR@25..38
            UNSAFE_KW@25..31 "unsafe"
            WHITESPACE@31..32 " "
            STMT_LIST@32..38
              L_CURLY@32..33 "{"
              WHITESPACE@33..34 " "
              TUPLE_EXPR@34..36
                L_PAREN@34..35 "("
                R_PAREN@35..36 ")"
              WHITESPACE@36..37 " "
              R_CURLY@37..38 "}"
          SEMICOLON@38..39 ";"
        WHITESPACE@39..40 "\n"
        R_CURLY@40..41 "}"
  WHITESPACE@41..42 "\n"
error 24..24: expected a block
error 24..24: expected SEMICOLON