org.jetbrains.jet.lang.resolve.calls.model
Class DelegatingResolvedCall<D extends CallableDescriptor>

java.lang.Object
  extended by org.jetbrains.jet.lang.resolve.calls.model.DelegatingResolvedCall<D>
All Implemented Interfaces:
ResolvedCall<D>

public abstract class DelegatingResolvedCall<D extends CallableDescriptor>
extends java.lang.Object
implements ResolvedCall<D>


Constructor Summary
DelegatingResolvedCall(ResolvedCall<? extends D> resolvedCall)
           
 
Method Summary
 D getCandidateDescriptor()
          A target callable descriptor as it was accessible in the corresponding scope, i.e.
 DataFlowInfoForArguments getDataFlowInfoForArguments()
           
 ExplicitReceiverKind getExplicitReceiverKind()
          Determines whether receiver argument or this object is substituted for explicit receiver
 ReceiverValue getReceiverArgument()
          If the target was an extension function or property, this is the value for its receiver parameter
 D getResultingDescriptor()
          Type arguments are substituted.
 ReceiverValue getThisObject()
          If the target was a member of a class, this is the object of that class to call it on
 java.util.Map<TypeParameterDescriptor,JetType> getTypeArguments()
          What's substituted for type parameters
 java.util.Map<ValueParameterDescriptor,ResolvedValueArgument> getValueArguments()
          Values (arguments) for value parameters
 java.util.List<ResolvedValueArgument> getValueArgumentsByIndex()
          Values (arguments) for value parameters indexed by parameter index
 boolean isSafeCall()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DelegatingResolvedCall

public DelegatingResolvedCall(@NotNull
                              ResolvedCall<? extends D> resolvedCall)
Method Detail

getCandidateDescriptor

@NotNull
public D getCandidateDescriptor()
Description copied from interface: ResolvedCall
A target callable descriptor as it was accessible in the corresponding scope, i.e. with type arguments not substituted

Specified by:
getCandidateDescriptor in interface ResolvedCall<D extends CallableDescriptor>

getResultingDescriptor

@NotNull
public D getResultingDescriptor()
Description copied from interface: ResolvedCall
Type arguments are substituted. This descriptor is guaranteed to have NO declared type parameters

Specified by:
getResultingDescriptor in interface ResolvedCall<D extends CallableDescriptor>

getReceiverArgument

@NotNull
public ReceiverValue getReceiverArgument()
Description copied from interface: ResolvedCall
If the target was an extension function or property, this is the value for its receiver parameter

Specified by:
getReceiverArgument in interface ResolvedCall<D extends CallableDescriptor>

getThisObject

@NotNull
public ReceiverValue getThisObject()
Description copied from interface: ResolvedCall
If the target was a member of a class, this is the object of that class to call it on

Specified by:
getThisObject in interface ResolvedCall<D extends CallableDescriptor>

getExplicitReceiverKind

@NotNull
public ExplicitReceiverKind getExplicitReceiverKind()
Description copied from interface: ResolvedCall
Determines whether receiver argument or this object is substituted for explicit receiver

Specified by:
getExplicitReceiverKind in interface ResolvedCall<D extends CallableDescriptor>

getValueArguments

@NotNull
public java.util.Map<ValueParameterDescriptor,ResolvedValueArgument> getValueArguments()
Description copied from interface: ResolvedCall
Values (arguments) for value parameters

Specified by:
getValueArguments in interface ResolvedCall<D extends CallableDescriptor>

getValueArgumentsByIndex

@NotNull
public java.util.List<ResolvedValueArgument> getValueArgumentsByIndex()
Description copied from interface: ResolvedCall
Values (arguments) for value parameters indexed by parameter index

Specified by:
getValueArgumentsByIndex in interface ResolvedCall<D extends CallableDescriptor>

getTypeArguments

@NotNull
public java.util.Map<TypeParameterDescriptor,JetType> getTypeArguments()
Description copied from interface: ResolvedCall
What's substituted for type parameters

Specified by:
getTypeArguments in interface ResolvedCall<D extends CallableDescriptor>

getDataFlowInfoForArguments

@NotNull
public DataFlowInfoForArguments getDataFlowInfoForArguments()
Specified by:
getDataFlowInfoForArguments in interface ResolvedCall<D extends CallableDescriptor>

isSafeCall

public boolean isSafeCall()
Specified by:
isSafeCall in interface ResolvedCall<D extends CallableDescriptor>