public boolean hasResult() { return node.getReturnValue() != null; } }
private Node transformReturn(ReturnStatement node) { boolean expClosure = Boolean.TRUE.equals(node.getProp(Node.EXPRESSION_CLOSURE_PROP)); if (expClosure) { decompiler.addName(" "); } else { decompiler.addToken(Token.RETURN); } AstNode rv = node.getReturnValue(); Node value = rv == null ? null : transform(rv); if (!expClosure) decompiler.addEOL(Token.SEMI); return rv == null ? new Node(Token.RETURN, node.getLineno()) : new Node(Token.RETURN, value, node.getLineno()); }
try { if (isExpressionClosure) { ReturnStatement n = new ReturnStatement(ts.lineno); n.setReturnValue(assignExpr()); n.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.addStatement(n);
@Override public String toSource(int depth) { StringBuilder sb = new StringBuilder(); sb.append(makeIndent(depth)); sb.append("return"); if (returnValue != null) { sb.append(" "); sb.append(returnValue.toSource(0)); } sb.append(";\n"); return sb.toString(); }
public ReturnStatement(int pos, int len, AstNode returnValue) { super(pos, len); setReturnValue(returnValue); }
ret = new ReturnStatement(pos, end - pos, e);
private Node transformReturn(ReturnStatement node) { boolean expClosure = Boolean.TRUE.equals(node.getProp(Node.EXPRESSION_CLOSURE_PROP)); if (expClosure) { decompiler.addName(" "); } else { decompiler.addToken(Token.RETURN); } AstNode rv = node.getReturnValue(); Node value = rv == null ? null : transform(rv); if (!expClosure) decompiler.addEOL(Token.SEMI); return rv == null ? new Node(Token.RETURN, node.getLineno()) : new Node(Token.RETURN, value, node.getLineno()); }
try { if (isExpressionClosure) { ReturnStatement n = new ReturnStatement(ts.lineno); n.setReturnValue(assignExpr()); n.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.addStatement(n);
@Override public String toSource(int depth) { StringBuilder sb = new StringBuilder(); sb.append(makeIndent(depth)); sb.append("return"); if (returnValue != null) { sb.append(" "); sb.append(returnValue.toSource(0)); } sb.append(";\n"); return sb.toString(); }
public ReturnStatement(int pos, int len, AstNode returnValue) { super(pos, len); setReturnValue(returnValue); }
ret = new ReturnStatement(pos, end - pos, e);
private Node transformReturn(ReturnStatement node) { boolean expClosure = Boolean.TRUE.equals(node.getProp(Node.EXPRESSION_CLOSURE_PROP)); if (expClosure) { decompiler.addName(" "); } else { decompiler.addToken(Token.RETURN); } AstNode rv = node.getReturnValue(); Node value = rv == null ? null : transform(rv); if (!expClosure) decompiler.addEOL(Token.SEMI); return rv == null ? new Node(Token.RETURN, node.getLineno()) : new Node(Token.RETURN, value, node.getLineno()); }
private void print(ReturnStatement node) throws IOException { writer.append("return"); if (node.getReturnValue() != null) { writer.append(' '); print(node.getReturnValue()); } writer.append(';'); }
try { if (isExpressionClosure) { ReturnStatement n = new ReturnStatement(ts.lineno); n.setReturnValue(assignExpr()); n.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.addStatement(n);
@Override public String toSource(int depth) { StringBuilder sb = new StringBuilder(); sb.append(makeIndent(depth)); sb.append("return"); if (returnValue != null) { sb.append(" "); sb.append(returnValue.toSource(0)); } sb.append(";\n"); return sb.toString(); }
public ReturnStatement(int pos, int len, AstNode returnValue) { super(pos, len); setReturnValue(returnValue); }
ret = new ReturnStatement(pos, end - pos, e);
private Node transformReturn(ReturnStatement node) { boolean expClosure = Boolean.TRUE.equals(node.getProp(Node.EXPRESSION_CLOSURE_PROP)); if (expClosure) { decompiler.addName(" "); } else { decompiler.addToken(Token.RETURN); } AstNode rv = node.getReturnValue(); Node value = rv == null ? null : transform(rv); if (!expClosure) decompiler.addEOL(Token.SEMI); return rv == null ? new Node(Token.RETURN, node.getLineno()) : new Node(Token.RETURN, value, node.getLineno()); }
private void print(FunctionNode node) throws IOException { if (!node.isMethod()) { writer.append("function"); } if (node.getFunctionName() != null) { writer.append(' '); print(node.getFunctionName()); } writer.append('('); printList(node.getParams()); writer.append(')').ws(); if (node.isExpressionClosure()) { if (node.getBody().getLastChild() instanceof ReturnStatement) { print(((ReturnStatement) node.getBody().getLastChild()).getReturnValue()); if (node.getFunctionType() == FunctionNode.FUNCTION_STATEMENT) { writer.append(";"); } } } else { print(node.getBody()); } }
try { if (isExpressionClosure) { ReturnStatement n = new ReturnStatement(ts.lineno); n.setReturnValue(assignExpr()); n.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.putProp(Node.EXPRESSION_CLOSURE_PROP, Boolean.TRUE); pn.addStatement(n);