private String formFullName(JavaSymbol symbol) { if(symbol.isTypeSymbol()) { return ((JavaSymbol.TypeJavaSymbol) symbol).getFullyQualifiedName(); } return formFullName(symbol.name, symbol.owner); }
private String formFullName(JavaSymbol symbol) { if(symbol.isTypeSymbol()) { return ((JavaSymbol.TypeJavaSymbol) symbol).getFullyQualifiedName(); } return formFullName(symbol.name, symbol.owner); }
public TypeJavaSymbol(int flags, String name, JavaSymbol owner) { super(TYP, flags, name, owner); this.type = new ClassJavaType(this); this.typeVariableTypes = Lists.newArrayList(); if (owner.isMethodSymbol()) { // declaration of a class or an anonymous class in a method internalName = ((TypeJavaSymbol) owner.owner).registerClassInternalName(name); } else if (owner.isTypeSymbol() && name.isEmpty()) { // anonymous class in a field internalName = ((TypeJavaSymbol) owner).registerClassInternalName(""); } else { internalName = name; } }
public TypeJavaSymbol(int flags, String name, JavaSymbol owner) { super(TYP, flags, name, owner); this.type = new JavaType.ClassJavaType(this); this.typeVariableTypes = Lists.newArrayList(); if (owner.isMethodSymbol()) { // declaration of a class or an anonymous class in a method internalName = ((TypeJavaSymbol) owner.owner).registerClassInternalName(name); } else if (owner.isTypeSymbol() && name.isEmpty()) { // anonymous class in a field internalName = ((TypeJavaSymbol) owner).registerClassInternalName(""); } else { internalName = name; } }
public TypeJavaSymbol(int flags, String name, JavaSymbol owner) { super(TYP, flags, name, owner); this.type = new ClassJavaType(this); this.typeVariableTypes = Lists.newArrayList(); if (owner.isMethodSymbol()) { // declaration of a class or an anonymous class in a method internalName = ((TypeJavaSymbol) owner.owner).registerClassInternalName(name); } else if (owner.isTypeSymbol() && name.isEmpty()) { // anonymous class in a field internalName = ((TypeJavaSymbol) owner).registerClassInternalName(""); } else { internalName = name; } }
public TypeParameterDeclaration(JavaSymbol symbol) { super(ASM_API_VERSION); this.symbol = symbol; if(symbol.isTypeSymbol()) { ((JavaSymbol.TypeJavaSymbol) symbol).typeParameters = new Scope(symbol); }else if (symbol.isMethodSymbol()) { ((JavaSymbol.MethodJavaSymbol) symbol).typeParameters = new Scope(symbol); } }
public TypeParameterDeclaration(JavaSymbol symbol) { super(Opcodes.ASM5); this.symbol = symbol; if(symbol.isTypeSymbol()) { ((JavaSymbol.TypeJavaSymbol) symbol).typeParameters = new Scope(symbol); }else if (symbol.isMethodSymbol()) { ((JavaSymbol.MethodJavaSymbol) symbol).typeParameters = new Scope(symbol); } }
public TypeParameterDeclaration(JavaSymbol symbol) { super(ASM_API_VERSION); this.symbol = symbol; if(symbol.isTypeSymbol()) { ((JavaSymbol.TypeJavaSymbol) symbol).typeParameters = new Scope(symbol); }else if (symbol.isMethodSymbol()) { ((JavaSymbol.MethodJavaSymbol) symbol).typeParameters = new Scope(symbol); } }
@CheckForNull private static Object resolveIdentifier(IdentifierTree tree) { Symbol symbol = tree.symbol(); if (!symbol.isVariableSymbol()) { return null; } JavaSymbol.VariableJavaSymbol javaSymbol = (JavaSymbol.VariableJavaSymbol) symbol; JavaSymbol owner = javaSymbol.owner(); if (owner.isTypeSymbol()) { JavaSymbol.TypeJavaSymbol ownerType = (JavaSymbol.TypeJavaSymbol) owner; if ("java.lang.Boolean".equals(ownerType.getFullyQualifiedName())) { if ("TRUE".equals(javaSymbol.getName())) { return Boolean.TRUE; } else if ("FALSE".equals(javaSymbol.getName())) { return Boolean.FALSE; } } } return javaSymbol.constantValue().orElse(null); }
@CheckForNull private static Object resolveIdentifier(IdentifierTree tree) { Symbol symbol = tree.symbol(); if (!symbol.isVariableSymbol()) { return null; } JavaSymbol.VariableJavaSymbol javaSymbol = (JavaSymbol.VariableJavaSymbol) symbol; JavaSymbol owner = javaSymbol.owner(); if (owner.isTypeSymbol()) { JavaSymbol.TypeJavaSymbol ownerType = (JavaSymbol.TypeJavaSymbol) owner; if ("java.lang.Boolean".equals(ownerType.getFullyQualifiedName())) { if ("TRUE".equals(javaSymbol.getName())) { return Boolean.TRUE; } else if ("FALSE".equals(javaSymbol.getName())) { return Boolean.FALSE; } } } return javaSymbol.constantValue().orElse(null); }
public String getFullyQualifiedName() { if(fullyQualifiedName == null) { String newQualification = ""; if (owner.isPackageSymbol()) { if (!owner.name.isEmpty()) { newQualification = owner.name + "."; } } else if (owner.isTypeSymbol()) { newQualification = owner.type.fullyQualifiedName() + "$"; } else if (owner.isMethodSymbol()) { newQualification = owner.owner.type().fullyQualifiedName() + "$"; } else { throw new IllegalStateException("" + owner); } fullyQualifiedName = newQualification + getInternalName(); } return fullyQualifiedName; }
public String getFullyQualifiedName() { if (bytecodeName != null) { return bytecodeName; } if(fullyQualifiedName == null) { String newQualification = ""; if (owner.isPackageSymbol()) { if (!owner.name.isEmpty()) { newQualification = owner.name + "."; } } else if (owner.isTypeSymbol()) { newQualification = owner.type.fullyQualifiedName() + "$"; } else if (owner.isMethodSymbol()) { newQualification = owner.owner.type().fullyQualifiedName() + "$"; } else { throw new IllegalStateException("" + owner); } fullyQualifiedName = newQualification + getInternalName(); } return fullyQualifiedName; }
public String getFullyQualifiedName() { if (bytecodeName != null) { return bytecodeName; } if(fullyQualifiedName == null) { String newQualification = ""; if (owner.isPackageSymbol()) { if (!owner.name.isEmpty()) { newQualification = owner.name + "."; } } else if (owner.isTypeSymbol()) { newQualification = owner.type.fullyQualifiedName() + "$"; } else if (owner.isMethodSymbol()) { newQualification = owner.owner.type().fullyQualifiedName() + "$"; } else { throw new IllegalStateException("" + owner); } fullyQualifiedName = newQualification + getInternalName(); } return fullyQualifiedName; }
@Override public void visitFormalTypeParameter(String name) { JavaSymbol.TypeVariableJavaSymbol typeVariableSymbol = new JavaSymbol.TypeVariableJavaSymbol(name, symbol); ((TypeVariableJavaType) typeVariableSymbol.type).bounds = Lists.newArrayList(); if(symbol.isTypeSymbol()) { JavaSymbol.TypeJavaSymbol typeJavaSymbol = (JavaSymbol.TypeJavaSymbol) symbol; typeJavaSymbol.typeParameters.enter(typeVariableSymbol); typeJavaSymbol.addTypeParameter((TypeVariableJavaType) typeVariableSymbol.type); } else if (symbol.isMethodSymbol()) { JavaSymbol.MethodJavaSymbol methodSymbol = (JavaSymbol.MethodJavaSymbol) symbol; methodSymbol.typeParameters.enter(typeVariableSymbol); methodSymbol.addTypeParameter((TypeVariableJavaType) typeVariableSymbol.type); } } }
@Override public void visitFormalTypeParameter(String name) { JavaSymbol.TypeVariableJavaSymbol typeVariableSymbol = new JavaSymbol.TypeVariableJavaSymbol(name, symbol); ((TypeVariableJavaType) typeVariableSymbol.type).bounds = Lists.newArrayList(); if(symbol.isTypeSymbol()) { JavaSymbol.TypeJavaSymbol typeJavaSymbol = (JavaSymbol.TypeJavaSymbol) symbol; typeJavaSymbol.typeParameters.enter(typeVariableSymbol); typeJavaSymbol.addTypeParameter((TypeVariableJavaType) typeVariableSymbol.type); } else if (symbol.isMethodSymbol()) { JavaSymbol.MethodJavaSymbol methodSymbol = (JavaSymbol.MethodJavaSymbol) symbol; methodSymbol.typeParameters.enter(typeVariableSymbol); methodSymbol.addTypeParameter((TypeVariableJavaType) typeVariableSymbol.type); } } }
@Override public void visitFormalTypeParameter(String name) { JavaSymbol.TypeVariableJavaSymbol typeVariableSymbol = new JavaSymbol.TypeVariableJavaSymbol(name, symbol); ((JavaType.TypeVariableJavaType) typeVariableSymbol.type).bounds = Lists.newArrayList(); if(symbol.isTypeSymbol()) { JavaSymbol.TypeJavaSymbol typeJavaSymbol = (JavaSymbol.TypeJavaSymbol) symbol; typeJavaSymbol.typeParameters.enter(typeVariableSymbol); typeJavaSymbol.addTypeParameter((JavaType.TypeVariableJavaType) typeVariableSymbol.type); } else if (symbol.isMethodSymbol()) { JavaSymbol.MethodJavaSymbol methodSymbol = (JavaSymbol.MethodJavaSymbol) symbol; methodSymbol.typeParameters.enter(typeVariableSymbol); methodSymbol.addTypeParameter((JavaType.TypeVariableJavaType) typeVariableSymbol.type); } } }