Package org.eclipse.jdt.internal.compiler.lookup

Examples of org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding


    */
  final CompilerOptions compilerOptions = scope.compilerOptions();
  if (compilerOptions.sourceLevel >= ClassFileConstants.JDK1_8 && this.binding instanceof ParameterizedGenericMethodBinding && this.binding.isValidBinding()) {
    if (!compilerOptions.postResolutionRawTypeCompatibilityCheck)
      return;
    ParameterizedGenericMethodBinding pgmb = (ParameterizedGenericMethodBinding) this.binding;
    InferenceContext18 ctx = getInferenceContext(pgmb);
    if (ctx == null || ctx.stepCompleted < InferenceContext18.BINDINGS_UPDATED)
      return;
    int length = pgmb.typeArguments == null ? 0 : pgmb.typeArguments.length;
    boolean sawRawType = false;
View Full Code Here


  if (this.constant != Constant.NotAConstant)
    throw new UnsupportedOperationException("Unresolved MessageSend can't be queried if it is a polyexpression"); //$NON-NLS-1$
 
  if (resolutionCandidate != null) {
    if (resolutionCandidate instanceof ParameterizedGenericMethodBinding) {
      ParameterizedGenericMethodBinding pgmb = (ParameterizedGenericMethodBinding) resolutionCandidate;
      if (pgmb.inferredReturnType)
        return true; // if already determined
    }
    if (resolutionCandidate.returnType != null) {
      // resolution may have prematurely instantiated the generic method, we need the original, though:
View Full Code Here

  this.match = locator.newMethodReferenceMatch(element, elementBinding, accuracy, -1, -1, true, isSynthetic, reference);

  // Look to refine accuracy
  if (constructorBinding instanceof ParameterizedGenericMethodBinding) { // parameterized generic method
    // Update match regarding constructor type arguments
    ParameterizedGenericMethodBinding parameterizedMethodBinding = (ParameterizedGenericMethodBinding) constructorBinding;
    this.match.setRaw(parameterizedMethodBinding.isRaw);
    TypeBinding[] typeBindings = parameterizedMethodBinding.isRaw ? null : parameterizedMethodBinding.typeArguments;
    updateMatch(typeBindings, locator, this.pattern.constructorArguments, this.pattern.hasConstructorParameters());

    // Update match regarding declaring class type arguments
View Full Code Here

    boolean uncheckedBoundCheck = (method.tagBits & TagBits.HasUncheckedTypeArgumentForBoundCheck) != 0;
    MethodBinding rawOriginalGenericMethod = null;
    if (!isRawMemberInvocation) {
      if (method instanceof ParameterizedGenericMethodBinding) {
        ParameterizedGenericMethodBinding paramMethod = (ParameterizedGenericMethodBinding) method;
        if (paramMethod.isRaw && method.hasSubstitutedParameters()) {
          rawOriginalGenericMethod = method.original();
        }
      }
    }
View Full Code Here

        if (argument instanceof Invocation) {
          Invocation innerInvocation = (Invocation)argument;
          MethodBinding binding = innerInvocation.binding(parameterType, true, scope);
          if (binding instanceof ParameterizedGenericMethodBinding) {
            ParameterizedGenericMethodBinding parameterizedMethod = (ParameterizedGenericMethodBinding) binding;
            InferenceContext18 innerContext = innerInvocation.getInferenceContext(parameterizedMethod);
            if (innerContext != null) {
              if (!innerContext.hasResultFor(parameterType)) {
                argument.setExpectedType(parameterType);
                MethodBinding improvedBinding = innerContext.inferInvocationType(innerInvocation, parameterizedMethod);
View Full Code Here

TOP

Related Classes of org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding

Copyright © 2018 www.massapicom. 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.