protected IScope createImplicitFeatureCallAndLocalVariableScope(EObject context, IScope parent, IFeatureScopeSession session, IResolvedTypes resolvedTypes) {
IFeatureScopeSession nextCaptureLayer = session.getNextCaptureLayer();
if (nextCaptureLayer != null) {
parent = createImplicitFeatureCallAndLocalVariableScope(context, parent, nextCaptureLayer, resolvedTypes);
}
IScope implicitReceivers = createImplicitFeatureCallScope(context, parent, session, resolvedTypes);
IScope constructors = createConstructorDelegates(context, implicitReceivers, session, resolvedTypes);
IScope localVariables = createLocalVariableScope(context, constructors, session, resolvedTypes);
return localVariables;
}