SOURCE_FILE
  TYPE_ALIAS
    TYPE_KW "type"
    WHITESPACE " "
    NAME
      IDENT "T"
    WHITESPACE " "
    EQ "="
    WHITESPACE " "
    PATH_TYPE
      PATH
        PATH_SEGMENT
          NAME_REF
            IDENT "S"
          GENERIC_ARG_LIST
            L_ANGLE "<"
            TYPE_ARG
              PATH_TYPE
                PATH
                  PATH_SEGMENT
                    NAME_REF
                      IDENT "i32"
            COMMA ","
            WHITESPACE " "
            TYPE_ARG
              DYN_TRAIT_TYPE
                DYN_KW "dyn"
                WHITESPACE " "
                TYPE_BOUND_LIST
                  TYPE_BOUND
                    PATH_TYPE
                      PATH
                        PATH_SEGMENT
                          NAME_REF
                            IDENT "T"
            COMMA ","
            WHITESPACE " "
            TYPE_ARG
              FN_PTR_TYPE
                FN_KW "fn"
                PARAM_LIST
                  L_PAREN "("
                  R_PAREN ")"
            R_ANGLE ">"
    SEMICOLON ";"
  WHITESPACE "\n"
