private List<Identifier> getName(PropertyNode propertyNode) { List<Identifier> name = new ArrayList(1); if (propertyNode.getGetter() != null || propertyNode.getSetter() != null) { // check whether this is not defining getter or setter of a property. Node previousNode = getPreviousFromPath(1); if (previousNode instanceof FunctionNode) { FunctionNode fNode = (FunctionNode)previousNode; String fName = fNode.getIdent().getName(); if (fName.startsWith("get ") || fName.startsWith("set ")) { //NOI18N name.add(new Identifier(fName, new OffsetRange(fNode.getIdent().getStart(), fNode.getIdent().getFinish()))); return name; } } } return getName(propertyNode, parserResult); }
private boolean isKeyAndValueEquals(PropertyNode pNode) { if (pNode.getKey() instanceof IdentNode && pNode.getValue() instanceof IdentNode) { IdentNode key = (IdentNode)pNode.getKey(); IdentNode value = (IdentNode)pNode.getValue(); return key.getName().equals(value.getName()) && key.getStart() == value.getStart(); } if (pNode.getKey() instanceof IdentNode && pNode.getValue() instanceof BinaryNode && ((BinaryNode)pNode.getValue()).tokenType() == TokenType.ASSIGN && ((BinaryNode)pNode.getValue()).lhs() instanceof IdentNode) { IdentNode key = (IdentNode)pNode.getKey(); IdentNode value = (IdentNode)((BinaryNode)pNode.getValue()).lhs(); return key.getName().equals(value.getName()) && key.getStart() == value.getStart(); } return false; }
rPropertyNode.accept(this); if (isKeyAndValueEquals(lPropertyNode)) { variableName = lPropertyNode.getKeyName(); lPropertyNode.accept(this); } else if (lPropertyNode.getValue() instanceof IdentNode) { variableName = ((IdentNode)lPropertyNode.getValue()).getName(); } else if (lPropertyNode.getValue() instanceof BinaryNode) { BinaryNode bNode = (BinaryNode)lPropertyNode.getValue(); if (bNode.tokenType() == TokenType.ASSIGN && bNode.lhs() instanceof IdentNode) { JsObject rProperty = rObject.getProperty(lPropertyNode.getKeyName()); if (variable != null && rProperty != null) { rProperty.addOccurrence(new OffsetRange(lPropertyNode.getStart(), lPropertyNode.getStart() + lPropertyNode.getKeyName().length()));
@Override public boolean enterPropertyNode(PropertyNode propertyNode) { final Expression key = propertyNode.getKey(); final Expression value = propertyNode.getValue(); List<Expression> decorators = propertyNode.getDecorators(); if (decorators != null && !decorators.isEmpty()) { for (Expression decorator : decorators) { && !(value instanceof ObjectNode || value instanceof FunctionNode) && !propertyNode.isComputed()) { final JsObjectImpl parent = modelBuilder.getCurrentObject(); Identifier name = null; } if (propertyNode.isComputed()) { propertyNode.getKey().accept(this);
isStatic = pNode.isStatic(); if (fn.isClassConstructor() || fn.isSubclassConstructor()) { jsFunction.setJsKind(JsElement.Kind.CONSTRUCTOR); } else if (fn.isMethod()) { if (fn.equals(pNode.getGetter())) { jsFunction.setJsKind(JsElement.Kind.PROPERTY_GETTER); } else if (fn.equals(pNode.getSetter())) { jsFunction.setJsKind(JsElement.Kind.PROPERTY_SETTER); } else {
newIdentifier = new Identifier(pNode.getKeyName(), getOffsetRange(pNode.getKey())); } else if ((lastVisited instanceof VarNode) && fn.isAnonymous()) { VarNode vNode = (VarNode)lastVisited;
private static List<Identifier> getName(PropertyNode propertyNode, ParserResult parserResult) { List<Identifier> name = new ArrayList(1); if (propertyNode.getKey() instanceof IdentNode) { IdentNode ident = (IdentNode) propertyNode.getKey(); name.add(new Identifier(ident.getName(), getOffsetRange(ident))); } else if (propertyNode.getKey() instanceof LiteralNode){ LiteralNode lNode = (LiteralNode)propertyNode.getKey(); name.add(new Identifier(lNode.getString(), new OffsetRange(lNode.getStart(), lNode.getFinish()))); } return name; }