Examples of SuspendedInferenceRecord


Examples of org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.SuspendedInferenceRecord

        MethodBinding method = previousMethod;
        // ignore previous (inner) inference result and do a fresh start:
        // avoid original(), since we only want to discard one level of instantiation
        // (method type variables - not class type variables)!
        method = previousMethod.shallowOriginal();
        SuspendedInferenceRecord prevInvocation = inferenceContext.enterPolyInvocation(invocation, invocation.arguments());

        // Invocation Applicability Inference: 18.5.1 & Invocation Type Inference: 18.5.2
        try {
          Expression[] arguments = invocation.arguments();
          TypeBinding[] argumentTypes = arguments == null ? Binding.NO_PARAMETERS : new TypeBinding[arguments.length];
View Full Code Here

Examples of org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.SuspendedInferenceRecord

                          LambdaExpression lambda, ParameterizedTypeBinding targetTypeWithWildCards)
  {
    if (lambda.argumentsTypeElided()) {
      return lambda.findGroundTargetTypeForElidedLambda(scope, targetTypeWithWildCards);
    } else {
      SuspendedInferenceRecord previous = inferenceContext.enterLambda(lambda);
      try {
        return inferenceContext.inferFunctionalInterfaceParameterization(lambda, scope, targetTypeWithWildCards);
      } finally {
        inferenceContext.resumeSuspendedInference(previous);
      }
View Full Code Here

Examples of org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.SuspendedInferenceRecord

          && ((original.typeVariables() != Binding.NO_TYPE_VARIABLES && r.mentionsAny(original.typeVariables(), -1))
            || (original.isConstructor() && original.declaringClass.typeVariables() != Binding.NO_TYPE_VARIABLES)))
              // not checking r.mentionsAny for constructors, because A::new resolves to the raw type
              // whereas in fact the type of all expressions of this shape depends on their type variable (if any)
      {
        SuspendedInferenceRecord prevInvocation = inferenceContext.enterPolyInvocation(reference, null/*no invocation arguments available*/);

        // Invocation Applicability Inference: 18.5.1 & Invocation Type Inference: 18.5.2
        try {
          inferInvocationApplicability(inferenceContext, original, functionType.parameters, original.isConstructor()/*mimic a diamond?*/, inferenceContext.inferenceKind);
          if (!inferPolyInvocationType(inferenceContext, reference, r, original))
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.