@Override public boolean enterPropertyNode(final PropertyNode propertyNode) { if (propertyNode.getKeyName().equals(ScriptObject.PROTO_PROPERTY_NAME)) { tagNeverOptimistic(propertyNode.getValue()); } return super.enterPropertyNode(propertyNode); }
@Override public boolean enterObjectNode(final ObjectNode objectNode) { final List<PropertyNode> propNodes = objectNode.getElements(); final List<PropertyTreeImpl> propTrees = new ArrayList<>(propNodes.size()); for (final PropertyNode propNode : propNodes) { propTrees.add( new PropertyTreeImpl( propNode, translateExpr(propNode.getKey()), translateExpr(propNode.getValue()), (FunctionExpressionTree) translateExpr(propNode.getGetter()), (FunctionExpressionTree) translateExpr(propNode.getSetter()))); } curExpr = new ObjectLiteralTreeImpl(objectNode, propTrees); return false; }