SOURCE_FILE
  TRAIT
    TRAIT_KW "trait"
    WHITESPACE " "
    NAME
      IDENT "T"
    WHITESPACE " "
    ASSOC_ITEM_LIST
      L_CURLY "{"
      WHITESPACE "\n  "
      TYPE_ALIAS
        DEFAULT_KW "default"
        WHITESPACE " "
        TYPE_KW "type"
        WHITESPACE " "
        NAME
          IDENT "T"
        WHITESPACE " "
        EQ "="
        WHITESPACE " "
        PATH_TYPE
          PATH
            PATH_SEGMENT
              NAME_REF
                IDENT "Bar"
        SEMICOLON ";"
      WHITESPACE "\n  "
      CONST
        DEFAULT_KW "default"
        WHITESPACE " "
        CONST_KW "const"
        WHITESPACE " "
        NAME
          IDENT "f"
        COLON ":"
        WHITESPACE " "
        PATH_TYPE
          PATH
            PATH_SEGMENT
              NAME_REF
                IDENT "u8"
        WHITESPACE " "
        EQ "="
        WHITESPACE " "
        LITERAL
          INT_NUMBER "0"
        SEMICOLON ";"
      WHITESPACE "\n  "
      FN
        DEFAULT_KW "default"
        WHITESPACE " "
        FN_KW "fn"
        WHITESPACE " "
        NAME
          IDENT "foo"
        PARAM_LIST
          L_PAREN "("
          R_PAREN ")"
        WHITESPACE " "
        BLOCK_EXPR
          STMT_LIST
            L_CURLY "{"
            R_CURLY "}"
      WHITESPACE "\n  "
      FN
        DEFAULT_KW "default"
        WHITESPACE " "
        UNSAFE_KW "unsafe"
        WHITESPACE " "
        FN_KW "fn"
        WHITESPACE " "
        NAME
          IDENT "bar"
        PARAM_LIST
          L_PAREN "("
          R_PAREN ")"
        WHITESPACE " "
        BLOCK_EXPR
          STMT_LIST
            L_CURLY "{"
            R_CURLY "}"
      WHITESPACE "\n"
      R_CURLY "}"
  WHITESPACE "\n\n"
  IMPL
    IMPL_KW "impl"
    WHITESPACE " "
    PATH_TYPE
      PATH
        PATH_SEGMENT
          NAME_REF
            IDENT "T"
    WHITESPACE " "
    FOR_KW "for"
    WHITESPACE " "
    PATH_TYPE
      PATH
        PATH_SEGMENT
          NAME_REF
            IDENT "Foo"
    WHITESPACE " "
    ASSOC_ITEM_LIST
      L_CURLY "{"
      WHITESPACE "\n  "
      TYPE_ALIAS
        DEFAULT_KW "default"
        WHITESPACE " "
        TYPE_KW "type"
        WHITESPACE " "
        NAME
          IDENT "T"
        WHITESPACE " "
        EQ "="
        WHITESPACE " "
        PATH_TYPE
          PATH
            PATH_SEGMENT
              NAME_REF
                IDENT "Bar"
        SEMICOLON ";"
      WHITESPACE "\n  "
      CONST
        DEFAULT_KW "default"
        WHITESPACE " "
        CONST_KW "const"
        WHITESPACE " "
        NAME
          IDENT "f"
        COLON ":"
        WHITESPACE " "
        PATH_TYPE
          PATH
            PATH_SEGMENT
              NAME_REF
                IDENT "u8"
        WHITESPACE " "
        EQ "="
        WHITESPACE " "
        LITERAL
          INT_NUMBER "0"
        SEMICOLON ";"
      WHITESPACE "\n  "
      FN
        DEFAULT_KW "default"
        WHITESPACE " "
        FN_KW "fn"
        WHITESPACE " "
        NAME
          IDENT "foo"
        PARAM_LIST
          L_PAREN "("
          R_PAREN ")"
        WHITESPACE " "
        BLOCK_EXPR
          STMT_LIST
            L_CURLY "{"
            R_CURLY "}"
      WHITESPACE "\n  "
      FN
        DEFAULT_KW "default"
        WHITESPACE " "
        UNSAFE_KW "unsafe"
        WHITESPACE " "
        FN_KW "fn"
        WHITESPACE " "
        NAME
          IDENT "bar"
        PARAM_LIST
          L_PAREN "("
          R_PAREN ")"
        WHITESPACE " "
        BLOCK_EXPR
          STMT_LIST
            L_CURLY "{"
            R_CURLY "}"
      WHITESPACE "\n"
      R_CURLY "}"
  WHITESPACE "\n\n"
  IMPL
    DEFAULT_KW "default"
    WHITESPACE " "
    IMPL_KW "impl"
    WHITESPACE " "
    PATH_TYPE
      PATH
        PATH_SEGMENT
          NAME_REF
            IDENT "T"
    WHITESPACE " "
    FOR_KW "for"
    WHITESPACE " "
    TUPLE_TYPE
      L_PAREN "("
      R_PAREN ")"
    WHITESPACE " "
    ASSOC_ITEM_LIST
      L_CURLY "{"
      R_CURLY "}"
  WHITESPACE "\n"
  IMPL
    DEFAULT_KW "default"
    WHITESPACE " "
    UNSAFE_KW "unsafe"
    WHITESPACE " "
    IMPL_KW "impl"
    WHITESPACE " "
    PATH_TYPE
      PATH
        PATH_SEGMENT
          NAME_REF
            IDENT "T"
    WHITESPACE " "
    FOR_KW "for"
    WHITESPACE " "
    TUPLE_TYPE
      L_PAREN "("
      R_PAREN ")"
    WHITESPACE " "
    ASSOC_ITEM_LIST
      L_CURLY "{"
      R_CURLY "}"
  WHITESPACE "\n"
