@Override public LegacyIssue newIssue(PHPCheck check, String message) { LegacyIssue issue = new LegacyIssue(check, message); issues.add(issue); return issue; }
static UniqueAssignedValue Of(String name) { return new UniqueAssignedValue(name); }
@Override public final List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree) { return analyze(new PHPCheckContext(file, tree, null)); }
private ImmutableList<PhpIssue> createIssuesForLines(String message, int... lines) { ImmutableList.Builder<PhpIssue> issueBuilder = ImmutableList.builder(); for (int line : lines) { issueBuilder.add(new LegacyIssue(CHECK, message).line(line)); } return issueBuilder.build(); }
Optional<ExpressionTree> from(String code) throws Exception { CompilationUnitTree tree = parse(code, PHPLexicalGrammar.COMPILATION_UNIT); SymbolTable symbolTable = SymbolTableImpl.create(tree); AssignmentExpressionVisitor assignmentExpressionVisitor = new AssignmentExpressionVisitor(symbolTable); tree.accept(assignmentExpressionVisitor); IdentifierTree var = ((SymbolTableImpl) symbolTable).getSymbols(name).get(0).declaration(); Symbol symbol = symbolTable.getSymbol(var); return assignmentExpressionVisitor.getUniqueAssignedValue(symbol); } }
private static int line(PhpIssue issue) { if (issue instanceof LegacyIssue) { return ((LegacyIssue) issue).line(); } else if (issue instanceof LineIssue) { return ((LineIssue) issue).line(); } else if (issue instanceof FileIssue) { return 0; } return ((PreciseIssue) issue).primaryLocation().startLine(); }
@Override public void visitFunctionCall(FunctionCallTree tree) { tree.callee().accept(this); scan(tree.arguments()); }
@Override public final List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree) { return analyze(new PHPCheckContext(file, tree, null)); }
private static int line(PhpIssue issue) { if (issue instanceof LegacyIssue) { return ((LegacyIssue) issue).line(); } else if (issue instanceof LineIssue) { return ((LineIssue) issue).line(); } else if (issue instanceof FileIssue) { return 0; } return ((PreciseIssue) issue).primaryLocation().startLine(); }
@Override public LegacyIssue newIssue(PHPCheck check, String message) { LegacyIssue issue = new LegacyIssue(check, message); issues.add(issue); return issue; }
@Override public final List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree) { return analyze(new PHPCheckContext(file, tree, null)); }
@Override public final List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree) { return analyze(new PHPCheckContext(file, tree, null)); }
@Override public List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree, SymbolTable symbolTable) { return analyze(new PHPCheckContext(file, tree, null, symbolTable)); }
@Override public List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree, SymbolTable symbolTable) { return analyze(new PHPCheckContext(file, tree, null, symbolTable)); }
@Override public List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree, SymbolTable symbolTable) { return analyze(new PHPCheckContext(file, tree, null, symbolTable)); }
@Override public List<PhpIssue> analyze(PhpFile file, CompilationUnitTree tree, SymbolTable symbolTable) { return analyze(new PHPCheckContext(file, tree, null, symbolTable)); }
public List<PhpIssue> analyze() { ImmutableList.Builder<PhpIssue> issuesBuilder = ImmutableList.builder(); for (PHPCheck check : checks) { PHPCheckContext context = new PHPCheckContext(currentFile, currentFileTree, workingDir, currentFileSymbolTable); issuesBuilder.addAll(check.analyze(context)); } return issuesBuilder.build(); }
public List<PhpIssue> analyze() { ImmutableList.Builder<PhpIssue> issuesBuilder = ImmutableList.builder(); for (PHPCheck check : checks) { PHPCheckContext context = new PHPCheckContext(currentFile, currentFileTree, workingDir, currentFileSymbolTable); issuesBuilder.addAll(check.analyze(context)); } return issuesBuilder.build(); }