Class TypeParametersToTypeArgumentsBinder
- java.lang.Object
-
- org.jd.core.v1.service.converter.classfiletojavasyntax.util.TypeParametersToTypeArgumentsBinder
-
public class TypeParametersToTypeArgumentsBinder extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
TypeParametersToTypeArgumentsBinder.BindVisitor
protected static class
TypeParametersToTypeArgumentsBinder.RemoveNonWildcardTypeArgumentsVisitor
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TypeParametersToTypeArgumentsBinder(TypeMaker typeMaker, java.lang.String internalTypeName, ClassFileConstructorOrMethodDeclaration comd)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BaseType
bind(java.util.Map<java.lang.String,TypeArgument> bindings, BaseType parameterTypes)
protected void
bind(Type type, ClassFileMethodInvocationExpression mie)
protected void
bind(Type type, ClassFileNewExpression ne)
protected void
bindParameters(BaseType parameterTypes, BaseExpression parameters)
void
bindParameterTypesWithArgumentTypes(Type type, Expression expression)
protected Type
checkTypeArguments(Type type, AbstractLocalVariable localVariable)
protected BaseType
clone(BaseType parameterTypes)
protected java.util.Map<java.lang.String,TypeArgument>
createBindings(Expression expression, BaseTypeParameter typeParameters, BaseTypeArgument typeArguments, BaseTypeParameter methodTypeParameters, Type returnType, Type returnExpressionType, BaseType parameterTypes, BaseExpression parameters)
protected boolean
eraseTypeArguments(Expression expression, BaseTypeParameter typeParameters, BaseTypeArgument typeArguments)
protected Type
getExpressionType(Expression expression)
protected Type
getExpressionType(ClassFileMethodInvocationExpression mie)
protected Type
getExpressionType(ClassFileNewExpression ne)
ClassFileConstructorInvocationExpression
newConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
FieldReferenceExpression
newFieldReferenceExpression(int lineNumber, Type type, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor)
ClassFileMethodInvocationExpression
newMethodInvocationExpression(int lineNumber, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
ClassFileSuperConstructorInvocationExpression
newSuperConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
protected void
populateBindingsWithTypeArgument(java.util.Map<java.lang.String,TypeArgument> bindings, java.util.Map<java.lang.String,BaseType> typeBounds, Type type, Expression expression)
static void
staticBindParameterTypesWithArgumentTypes(Type type, Expression expression)
void
updateNewExpression(ClassFileNewExpression ne, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
-
-
-
Field Detail
-
REMOVE_NON_WILDCARD_TYPE_ARGUMENTS_VISITOR
protected static final TypeParametersToTypeArgumentsBinder.RemoveNonWildcardTypeArgumentsVisitor REMOVE_NON_WILDCARD_TYPE_ARGUMENTS_VISITOR
-
populateBindingsWithTypeParameterVisitor
protected PopulateBindingsWithTypeParameterVisitor populateBindingsWithTypeParameterVisitor
-
bindTypesToTypesVisitor
protected BindTypesToTypesVisitor bindTypesToTypesVisitor
-
searchInTypeArgumentVisitor
protected SearchInTypeArgumentVisitor searchInTypeArgumentVisitor
-
typeArgumentToTypeVisitor
protected TypeArgumentToTypeVisitor typeArgumentToTypeVisitor
-
baseTypeToTypeArgumentVisitor
protected BaseTypeToTypeArgumentVisitor baseTypeToTypeArgumentVisitor
-
bindTypeParametersToNonWildcardTypeArgumentsVisitor
protected BindTypeParametersToNonWildcardTypeArgumentsVisitor bindTypeParametersToNonWildcardTypeArgumentsVisitor
-
bindVisitor
protected TypeParametersToTypeArgumentsBinder.BindVisitor bindVisitor
-
typeMaker
protected TypeMaker typeMaker
-
internalTypeName
protected java.lang.String internalTypeName
-
staticMethod
protected boolean staticMethod
-
populateBindingsWithTypeArgumentVisitor
protected PopulateBindingsWithTypeArgumentVisitor populateBindingsWithTypeArgumentVisitor
-
contextualBindings
protected java.util.Map<java.lang.String,TypeArgument> contextualBindings
-
contextualTypeBounds
protected java.util.Map<java.lang.String,BaseType> contextualTypeBounds
-
-
Constructor Detail
-
TypeParametersToTypeArgumentsBinder
public TypeParametersToTypeArgumentsBinder(TypeMaker typeMaker, java.lang.String internalTypeName, ClassFileConstructorOrMethodDeclaration comd)
-
-
Method Detail
-
newConstructorInvocationExpression
public ClassFileConstructorInvocationExpression newConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
-
newSuperConstructorInvocationExpression
public ClassFileSuperConstructorInvocationExpression newSuperConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
-
newMethodInvocationExpression
public ClassFileMethodInvocationExpression newMethodInvocationExpression(int lineNumber, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
-
newFieldReferenceExpression
public FieldReferenceExpression newFieldReferenceExpression(int lineNumber, Type type, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor)
-
updateNewExpression
public void updateNewExpression(ClassFileNewExpression ne, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)
-
bindParameterTypesWithArgumentTypes
public void bindParameterTypesWithArgumentTypes(Type type, Expression expression)
-
checkTypeArguments
protected Type checkTypeArguments(Type type, AbstractLocalVariable localVariable)
-
bind
protected void bind(Type type, ClassFileMethodInvocationExpression mie)
-
bind
protected void bind(Type type, ClassFileNewExpression ne)
-
bindParameters
protected void bindParameters(BaseType parameterTypes, BaseExpression parameters)
-
staticBindParameterTypesWithArgumentTypes
public static void staticBindParameterTypesWithArgumentTypes(Type type, Expression expression)
-
createBindings
protected java.util.Map<java.lang.String,TypeArgument> createBindings(Expression expression, BaseTypeParameter typeParameters, BaseTypeArgument typeArguments, BaseTypeParameter methodTypeParameters, Type returnType, Type returnExpressionType, BaseType parameterTypes, BaseExpression parameters)
-
eraseTypeArguments
protected boolean eraseTypeArguments(Expression expression, BaseTypeParameter typeParameters, BaseTypeArgument typeArguments)
-
populateBindingsWithTypeArgument
protected void populateBindingsWithTypeArgument(java.util.Map<java.lang.String,TypeArgument> bindings, java.util.Map<java.lang.String,BaseType> typeBounds, Type type, Expression expression)
-
bind
protected BaseType bind(java.util.Map<java.lang.String,TypeArgument> bindings, BaseType parameterTypes)
-
getExpressionType
protected Type getExpressionType(Expression expression)
-
getExpressionType
protected Type getExpressionType(ClassFileMethodInvocationExpression mie)
-
getExpressionType
protected Type getExpressionType(ClassFileNewExpression ne)
-
-