src/share/classes/com/sun/tools/javac/tree/TreeCopier.java

Print this page

        

@@ -195,10 +195,17 @@
         List<JCExpressionStatement> step = copy(t.step, p);
         JCStatement body = copy(t.body, p);
         return M.at(t.pos).ForLoop(init, cond, step, body);
     }
 
+    public JCTree visitFunctionType(FunctionTypeTree node, P p) {
+        JCFunctionType t = (JCFunctionType) node;
+        List<JCExpression> parameterTypes = copy(t.parameterTypes, p);
+        JCExpression returnType = copy(t.returnType, p);
+        return M.at(t.pos).FunctionType(parameterTypes, returnType);
+    }
+    
     public JCTree visitIdentifier(IdentifierTree node, P p) {
         JCIdent t = (JCIdent) node;
         return M.at(t.pos).Ident(t.name);
     }
 

@@ -227,10 +234,17 @@
         JCLabeledStatement t = (JCLabeledStatement) node;
         JCStatement body = copy(t.body, p);
         return M.at(t.pos).Labelled(t.label, t.body);
     }
 
+    public JCTree visitLambda(LambdaTree node, P p) {
+        JCLambda t = (JCLambda) node;
+        List<JCVariableDecl> parameters = copy(t.parameters, p);
+        JCTree bodyOrExpr = copy(t.bodyOrExpr, p);
+        return M.at(t.pos).Lambda(parameters, bodyOrExpr);
+    }
+    
     public JCTree visitLiteral(LiteralTree node, P p) {
         JCLiteral t = (JCLiteral) node;
         return M.at(t.pos).Literal(t.typetag, t.value);
     }