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 classTypeParametersToTypeArgumentsBinder.BindVisitorprotected static classTypeParametersToTypeArgumentsBinder.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 BaseTypebind(java.util.Map<java.lang.String,TypeArgument> bindings, BaseType parameterTypes)protected voidbind(Type type, ClassFileMethodInvocationExpression mie)protected voidbind(Type type, ClassFileNewExpression ne)protected voidbindParameters(BaseType parameterTypes, BaseExpression parameters)voidbindParameterTypesWithArgumentTypes(Type type, Expression expression)protected TypecheckTypeArguments(Type type, AbstractLocalVariable localVariable)protected BaseTypeclone(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 booleaneraseTypeArguments(Expression expression, BaseTypeParameter typeParameters, BaseTypeArgument typeArguments)protected TypegetExpressionType(Expression expression)protected TypegetExpressionType(ClassFileMethodInvocationExpression mie)protected TypegetExpressionType(ClassFileNewExpression ne)ClassFileConstructorInvocationExpressionnewConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)FieldReferenceExpressionnewFieldReferenceExpression(int lineNumber, Type type, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor)ClassFileMethodInvocationExpressionnewMethodInvocationExpression(int lineNumber, Expression expression, ObjectType objectType, java.lang.String name, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)ClassFileSuperConstructorInvocationExpressionnewSuperConstructorInvocationExpression(int lineNumber, ObjectType objectType, java.lang.String descriptor, TypeMaker.MethodTypes methodTypes, BaseExpression parameters)protected voidpopulateBindingsWithTypeArgument(java.util.Map<java.lang.String,TypeArgument> bindings, java.util.Map<java.lang.String,BaseType> typeBounds, Type type, Expression expression)static voidstaticBindParameterTypesWithArgumentTypes(Type type, Expression expression)voidupdateNewExpression(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)
-
-