public List<ClassReference> getInterfaces() { ArrayList<ClassReference> result = new ArrayList<ClassReference>(); List<JSTypeExpression> implementedInterfaces = getComment().getImplementedInterfaces(); for (JSTypeExpression jsTypeExpression : implementedInterfaces) { JSType jsType = getModel().evaluate(jsTypeExpression); String interfaceName = jsType.toAnnotationString(); ClassReference interfaceReference = getModel().getClassReference(interfaceName); if (interfaceReference != null) result.add(interfaceReference); else { DummyNode node = new DummyNode(); String externName = AbstractCompilerPass.getSourceFileName(this.getNode().getStaticSourceFile().getName(), getModel()); node.setSourcePath(externName); node.setLine(this.getNode().getLineno()); UnresolvedClassReferenceProblem problem = new UnresolvedClassReferenceProblem(node, interfaceName); getModel().problems.add(problem); } } return result; }
addProblem(new UnresolvedClassReferenceProblem(call_node, func_name.getDisplayString()));
public List<ClassReference> getInterfaces() { ArrayList<ClassReference> result = new ArrayList<ClassReference>(); List<JSTypeExpression> implementedInterfaces = getComment().getImplementedInterfaces(); for (JSTypeExpression jsTypeExpression : implementedInterfaces) { JSType jsType = getModel().evaluate(jsTypeExpression); if (jsType.isTemplatizedType()) { jsType = ((TemplatizedType)jsType).getReferencedType(); } String interfaceName = jsType.getDisplayName(); ClassReference interfaceReference = getModel().getClassReference(interfaceName); if (interfaceReference != null) result.add(interfaceReference); else { DummyNode node = new DummyNode(); String externName = AbstractCompilerPass.getSourceFileName(this.getNode().getStaticSourceFile().getName(), getModel()); node.setSourcePath(externName); node.setLine(this.getNode().getLineno()); UnresolvedClassReferenceProblem problem = new UnresolvedClassReferenceProblem(node, interfaceName); getModel().problems.add(problem); } } return result; }
ICompilerProblem problem = new UnresolvedClassReferenceProblem(crn, crn.getName()); problems.add(problem);
ICompilerProblem problem = new UnresolvedClassReferenceProblem(crn, crn.getName()); problems.add(problem);