@@ -3883,6 +3883,49 @@ private module Impl {
38833883 )
38843884 }
38853885
3886+ private Element getImmediateChildOfPackExpansionType (
3887+ PackExpansionType e , int index , string partialPredicateCall
3888+ ) {
3889+ exists ( int b , int bType , int n |
3890+ b = 0 and
3891+ bType = b + 1 + max ( int i | i = - 1 or exists ( getImmediateChildOfType ( e , i , _) ) | i ) and
3892+ n = bType and
3893+ (
3894+ none ( )
3895+ or
3896+ result = getImmediateChildOfType ( e , index - b , partialPredicateCall )
3897+ )
3898+ )
3899+ }
3900+
3901+ private Element getImmediateChildOfPackType ( PackType e , int index , string partialPredicateCall ) {
3902+ exists ( int b , int bType , int n |
3903+ b = 0 and
3904+ bType = b + 1 + max ( int i | i = - 1 or exists ( getImmediateChildOfType ( e , i , _) ) | i ) and
3905+ n = bType and
3906+ (
3907+ none ( )
3908+ or
3909+ result = getImmediateChildOfType ( e , index - b , partialPredicateCall )
3910+ )
3911+ )
3912+ }
3913+
3914+ private Element getImmediateChildOfParameterizedProtocolType (
3915+ ParameterizedProtocolType e , int index , string partialPredicateCall
3916+ ) {
3917+ exists ( int b , int bType , int n |
3918+ b = 0 and
3919+ bType = b + 1 + max ( int i | i = - 1 or exists ( getImmediateChildOfType ( e , i , _) ) | i ) and
3920+ n = bType and
3921+ (
3922+ none ( )
3923+ or
3924+ result = getImmediateChildOfType ( e , index - b , partialPredicateCall )
3925+ )
3926+ )
3927+ }
3928+
38863929 private Element getImmediateChildOfPlaceholderType (
38873930 PlaceholderType e , int index , string partialPredicateCall
38883931 ) {
@@ -5158,6 +5201,12 @@ private module Impl {
51585201 or
51595202 result = getImmediateChildOfModuleType ( e , index , partialAccessor )
51605203 or
5204+ result = getImmediateChildOfPackExpansionType ( e , index , partialAccessor )
5205+ or
5206+ result = getImmediateChildOfPackType ( e , index , partialAccessor )
5207+ or
5208+ result = getImmediateChildOfParameterizedProtocolType ( e , index , partialAccessor )
5209+ or
51615210 result = getImmediateChildOfPlaceholderType ( e , index , partialAccessor )
51625211 or
51635212 result = getImmediateChildOfProtocolCompositionType ( e , index , partialAccessor )
0 commit comments