FILE
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S1')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S2')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiElement(})('}')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S3')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiWhiteSpace(' ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        PsiElement(identifier)('field')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiWhiteSpace('  ')
      PsiElement(})('}')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S4')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiWhiteSpace(' ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        PsiElement(identifier)('field')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiElement(,)(',')
      PsiWhiteSpace(' ')
      PsiElement(})('}')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S5')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiWhiteSpace(' ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('field')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiWhiteSpace(' ')
      PsiElement(})('}')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S6')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiWhiteSpace(' ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('field')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiElement(,)(',')
      PsiWhiteSpace(' ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('field2')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiWhiteSpace(' ')
      PsiElement(})('}')
  PsiWhiteSpace('\n\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S10')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S11')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S12')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement(,)(',')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S13')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement(,)(',')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S14')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n')
  RsStructItemImpl(STRUCT_ITEM)
    PsiElement(struct)('struct')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('S15')
    RsTupleFieldsImpl(TUPLE_FIELDS)
      PsiElement(()('(')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement(,)(',')
      PsiWhiteSpace(' ')
      RsTupleFieldDeclImpl(TUPLE_FIELD_DECL)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('foo')
          PsiElement(])(']')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement())(')')
    PsiElement(;)(';')
  PsiWhiteSpace('\n\n')
  RsStructItemImpl(STRUCT_ITEM)
    RsOuterAttrImpl(OUTER_ATTR)
      PsiElement(#)('#')
      PsiElement([)('[')
      RsMetaItemImpl(META_ITEM)
        RsPathImpl(PATH)
          PsiElement(identifier)('repr')
        RsMetaItemArgsImpl(META_ITEM_ARGS)
          PsiElement(()('(')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('C')
          PsiElement())(')')
      PsiElement(])(']')
    PsiWhiteSpace('\n')
    PsiElement(union_kw)('union')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('U')
    PsiWhiteSpace(' ')
    RsBlockFieldsImpl(BLOCK_FIELDS)
      PsiElement({)('{')
      PsiWhiteSpace('\n    ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        PsiElement(identifier)('i')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('i32')
      PsiElement(,)(',')
      PsiWhiteSpace('\n    ')
      RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
        PsiElement(identifier)('f')
        PsiElement(:)(':')
        PsiWhiteSpace(' ')
        RsPathTypeImpl(PATH_TYPE)
          RsPathImpl(PATH)
            PsiElement(identifier)('f32')
      PsiElement(,)(',')
      PsiWhiteSpace('\n')
      PsiElement(})('}')
  PsiWhiteSpace('\n\n')
  RsFunctionImpl(FUNCTION)
    PsiElement(fn)('fn')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('foo')
    RsValueParameterListImpl(VALUE_PARAMETER_LIST)
      PsiElement(()('(')
      PsiElement())(')')
    PsiWhiteSpace(' ')
    RsBlockImpl(BLOCK)
      PsiElement({)('{')
      PsiWhiteSpace('\n    ')
      RsStructItemImpl(STRUCT_ITEM)
        PsiElement(struct)('struct')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('S1')
        PsiElement(;)(';')
      PsiWhiteSpace('\n    ')
      RsStructItemImpl(STRUCT_ITEM)
        PsiElement(struct)('struct')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('S2')
        PsiWhiteSpace(' ')
        RsBlockFieldsImpl(BLOCK_FIELDS)
          PsiElement({)('{')
          PsiElement(})('}')
      PsiWhiteSpace('\n    ')
      RsStructItemImpl(STRUCT_ITEM)
        PsiElement(struct)('struct')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('S3')
        PsiWhiteSpace(' ')
        RsBlockFieldsImpl(BLOCK_FIELDS)
          PsiElement({)('{')
          PsiWhiteSpace(' ')
          RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
            PsiElement(identifier)('field')
            PsiElement(:)(':')
            PsiWhiteSpace(' ')
            RsPathTypeImpl(PATH_TYPE)
              RsPathImpl(PATH)
                PsiElement(identifier)('f32')
          PsiWhiteSpace('  ')
          PsiElement(})('}')
      PsiWhiteSpace('\n    ')
      RsStructItemImpl(STRUCT_ITEM)
        PsiElement(struct)('struct')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('S4')
        PsiWhiteSpace(' ')
        RsBlockFieldsImpl(BLOCK_FIELDS)
          PsiElement({)('{')
          PsiWhiteSpace(' ')
          RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
            PsiElement(identifier)('field')
            PsiElement(:)(':')
            PsiWhiteSpace(' ')
            RsPathTypeImpl(PATH_TYPE)
              RsPathImpl(PATH)
                PsiElement(identifier)('f32')
          PsiElement(,)(',')
          PsiWhiteSpace(' ')
          PsiElement(})('}')
      PsiWhiteSpace('\n\n    ')
      RsStructItemImpl(STRUCT_ITEM)
        RsOuterAttrImpl(OUTER_ATTR)
          PsiElement(#)('#')
          PsiElement([)('[')
          RsMetaItemImpl(META_ITEM)
            RsPathImpl(PATH)
              PsiElement(identifier)('repr')
            RsMetaItemArgsImpl(META_ITEM_ARGS)
              PsiElement(()('(')
              RsMetaItemImpl(META_ITEM)
                RsPathImpl(PATH)
                  PsiElement(identifier)('C')
              PsiElement())(')')
          PsiElement(])(']')
        PsiWhiteSpace('\n    ')
        PsiElement(union_kw)('union')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('U')
        PsiWhiteSpace(' ')
        RsBlockFieldsImpl(BLOCK_FIELDS)
          PsiElement({)('{')
          PsiWhiteSpace('\n        ')
          RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
            PsiElement(identifier)('i')
            PsiElement(:)(':')
            PsiWhiteSpace(' ')
            RsPathTypeImpl(PATH_TYPE)
              RsPathImpl(PATH)
                PsiElement(identifier)('i32')
          PsiElement(,)(',')
          PsiWhiteSpace('\n        ')
          RsNamedFieldDeclImpl(NAMED_FIELD_DECL)
            PsiElement(identifier)('f')
            PsiElement(:)(':')
            PsiWhiteSpace(' ')
            RsPathTypeImpl(PATH_TYPE)
              RsPathImpl(PATH)
                PsiElement(identifier)('f32')
          PsiElement(,)(',')
          PsiWhiteSpace('\n    ')
          PsiElement(})('}')
      PsiWhiteSpace('\n')
      PsiElement(})('}')
