@Override public Collection<Symbol> memberSymbols() { return Lists.<Symbol>newArrayList(members().scopeSymbols()); }
/** * Registers builtin types as symbols, so that they can be found as an usual identifiers. */ private JavaType initType(int tag, String name) { JavaSymbol.TypeJavaSymbol symbol = new JavaSymbol.TypeJavaSymbol(Flags.PUBLIC, name, rootPackage); symbol.members = new Scope(symbol); predefClass.members.enter(symbol); ((ClassJavaType) symbol.type).interfaces = ImmutableList.of(); symbol.type.tag = tag; return symbol.type; }
private JavaSymbol findVarInStaticImport(Env env, String name) { JavaSymbol bestSoFar = symbolNotFound; for (JavaSymbol symbol : env.namedImports.lookup(name)) { if ((JavaSymbol.VAR & symbol.kind) != 0) { return symbol; } } for (JavaSymbol symbol : env.staticStarImports.lookup(name)) { if ((JavaSymbol.VAR & symbol.kind) != 0) { return symbol; } } return bestSoFar; }
@Override public void enter(JavaSymbol symbol) { this.orderedSymbols.add(symbol); super.enter(symbol); }
public WildcardSymbol(String name) { super(0, name, Symbols.unknownSymbol); this.members = new Scope(this); }
private void enterSymbol(Tree tree, JavaSymbol symbol) { env.scope.enter(symbol); semanticModel.associateSymbol(tree, symbol); }
public WildcardSymbol(String name) { super(0, name, Symbols.unknownSymbol); this.members = new Scope(this); }
@Override public Collection<org.sonar.plugins.java.api.semantic.Symbol> memberSymbols() { return Lists.<org.sonar.plugins.java.api.semantic.Symbol>newArrayList(members().scopeSymbols()); }
/** * Registers builtin types as symbols, so that they can be found as an usual identifiers. */ private JavaType initType(int tag, String name) { JavaSymbol.TypeJavaSymbol symbol = new JavaSymbol.TypeJavaSymbol(Flags.PUBLIC, name, rootPackage); symbol.members = new Scope(symbol); predefClass.members.enter(symbol); ((ClassJavaType) symbol.type).interfaces = ImmutableList.of(); symbol.type.tag = tag; return symbol.type; }
private JavaSymbol findVarInStaticImport(Env env, String name) { JavaSymbol bestSoFar = symbolNotFound; for (JavaSymbol symbol : env.namedImports.lookup(name)) { if ((JavaSymbol.VAR & symbol.kind) != 0) { return symbol; } } for (JavaSymbol symbol : env.staticStarImports.lookup(name)) { if ((JavaSymbol.VAR & symbol.kind) != 0) { return symbol; } } return bestSoFar; }
private void enterSymbol(Tree tree, JavaSymbol symbol) { env.scope.enter(symbol); semanticModel.associateSymbol(tree, symbol); }
public WildcardSymbol(String name) { super(0, name, Symbols.unknownSymbol); this.members = new Scope(this); }
@Override public Collection<Symbol> memberSymbols() { return Lists.<Symbol>newArrayList(members().scopeSymbols()); }
/** * Registers builtin types as symbols, so that they can be found as an usual identifiers. */ private JavaType initType(int tag, String name) { JavaSymbol.TypeJavaSymbol symbol = new JavaSymbol.TypeJavaSymbol(Flags.PUBLIC, name, rootPackage); symbol.members = new Scope(symbol); predefClass.members.enter(symbol); ((JavaType.ClassJavaType) symbol.type).interfaces = ImmutableList.of(); symbol.type.tag = tag; return symbol.type; }
/** * @param kind subset of {@link JavaSymbol#VAR}, {@link JavaSymbol#MTH} */ private JavaSymbol findInStaticImport(Env env, String name, int kind) { JavaSymbol bestSoFar = symbolNotFound; //imports //Ok because clash of name between type and var/method result in compile error: JLS8 7.5.3 for (JavaSymbol symbol : env.namedImports.lookup(name)) { if ((kind & symbol.kind) != 0) { return symbol; } } for (JavaSymbol symbol : env.staticStarImports.lookup(name)) { if ((kind & symbol.kind) != 0) { return symbol; } } return bestSoFar; }
private void enterSymbol(Tree tree, JavaSymbol symbol) { env.scope.enter(symbol); semanticModel.associateSymbol(tree, symbol); }
public ReadMethodSignature(JavaSymbol.MethodJavaSymbol methodSymbol) { super(Opcodes.ASM5); this.methodSymbol = methodSymbol; ((JavaType.MethodJavaType) methodSymbol.type).argTypes = Lists.newArrayList(); ((JavaType.MethodJavaType) methodSymbol.type).thrown = Lists.newArrayList(); methodSymbol.typeParameters = new Scope(methodSymbol); }
@Override public Collection<org.sonar.plugins.java.api.semantic.Symbol> memberSymbols() { return Lists.<org.sonar.plugins.java.api.semantic.Symbol>newArrayList(members().scopeSymbols()); }
/** * Registers builtin types as symbols, so that they can be found as an usual identifiers. */ private JavaType initType(int tag, String name) { JavaSymbol.TypeJavaSymbol symbol = new JavaSymbol.TypeJavaSymbol(Flags.PUBLIC, name, rootPackage); symbol.members = new Scope(symbol); predefClass.members.enter(symbol); ((JavaType.ClassJavaType) symbol.type).interfaces = ImmutableList.of(); symbol.type.tag = tag; return symbol.type; }
@Override public void visitFormalTypeParameter(String name) { List<JavaSymbol> lookup = methodSymbol.typeParameters.lookup(name); int lookupSize = lookup.size(); Preconditions.checkState(lookupSize == 1, "found %s instead of 1", lookupSize); typeVariableSymbol = (JavaSymbol.TypeVariableJavaSymbol) lookup.iterator().next(); bounds = ((TypeVariableJavaType) typeVariableSymbol.type).bounds; }