@@ -569,58 +569,6 @@ class ImplTraitTypeTypeParameter extends ImplTraitType, TypeParameter {
569569 override TypeParameter getPositionalTypeParameter ( int i ) { none ( ) }
570570}
571571
572- /**
573- * A type abstraction. I.e., a place in the program where type variables are
574- * introduced.
575- *
576- * Example:
577- * ```rust
578- * impl<A, B> Foo<A, B> { }
579- * // ^^^^^^ a type abstraction
580- * ```
581- */
582- abstract class TypeAbstraction extends AstNode {
583- abstract TypeParameter getATypeParameter ( ) ;
584- }
585-
586- final class ImplTypeAbstraction extends TypeAbstraction , Impl {
587- override TypeParamTypeParameter getATypeParameter ( ) {
588- result .getTypeParam ( ) = this .getGenericParamList ( ) .getATypeParam ( )
589- }
590- }
591-
592- final class DynTypeAbstraction extends TypeAbstraction , DynTraitTypeRepr {
593- override TypeParameter getATypeParameter ( ) {
594- result = any ( DynTraitTypeParameter tp | tp .getTrait ( ) = this .getTrait ( ) ) .getTraitTypeParameter ( )
595- }
596- }
597-
598- final class TraitTypeAbstraction extends TypeAbstraction , Trait {
599- override TypeParameter getATypeParameter ( ) {
600- result .( TypeParamTypeParameter ) .getTypeParam ( ) = this .getGenericParamList ( ) .getATypeParam ( )
601- or
602- result .( AssociatedTypeTypeParameter ) .getTrait ( ) = this
603- or
604- result .( SelfTypeParameter ) .getTrait ( ) = this
605- }
606- }
607-
608- final class TypeBoundTypeAbstraction extends TypeAbstraction , TypeBound {
609- override TypeParameter getATypeParameter ( ) { none ( ) }
610- }
611-
612- final class SelfTypeBoundTypeAbstraction extends TypeAbstraction , Name {
613- SelfTypeBoundTypeAbstraction ( ) { any ( TraitTypeAbstraction trait ) .getName ( ) = this }
614-
615- override TypeParameter getATypeParameter ( ) { none ( ) }
616- }
617-
618- final class ImplTraitTypeReprAbstraction extends TypeAbstraction , ImplTraitTypeRepr {
619- override TypeParameter getATypeParameter ( ) {
620- implTraitTypeParam ( this , _, result .( TypeParamTypeParameter ) .getTypeParam ( ) )
621- }
622- }
623-
624572/**
625573 * Holds if `t` is a valid complex [`self` root type][1].
626574 *
0 commit comments