comparison graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/expression/SLFunctionLiteralNode.java @ 13836:64c77f0577bb

More documentation and improvements of Simple Language
author Christian Wimmer <christian.wimmer@oracle.com>
date Thu, 30 Jan 2014 17:53:27 -0800
parents b16ec83edc73
children c929a4a3b6c5
comparison
equal deleted inserted replaced
13835:67e4e7f56911 13836:64c77f0577bb
20 * or visit www.oracle.com if you need additional information or have any 20 * or visit www.oracle.com if you need additional information or have any
21 * questions. 21 * questions.
22 */ 22 */
23 package com.oracle.truffle.sl.nodes.expression; 23 package com.oracle.truffle.sl.nodes.expression;
24 24
25 import com.oracle.truffle.api.*;
25 import com.oracle.truffle.api.frame.*; 26 import com.oracle.truffle.api.frame.*;
26 import com.oracle.truffle.api.nodes.*; 27 import com.oracle.truffle.api.nodes.*;
27 import com.oracle.truffle.sl.nodes.*; 28 import com.oracle.truffle.sl.nodes.*;
28 import com.oracle.truffle.sl.runtime.*; 29 import com.oracle.truffle.sl.runtime.*;
29 30
31 /**
32 * Constant literal for a {@link SLFunction function} value, created when a function name occurs as
33 * a literal in SL source code. Note that function redefinition can change the {@link CallTarget
34 * call target} that is executed when calling the function, but the {@link SLFunction} for a name
35 * never changes. This is guaranteed by the {@link SLFunctionRegistry}.
36 */
30 @NodeInfo(shortName = "func") 37 @NodeInfo(shortName = "func")
31 public final class SLFunctionLiteralNode extends SLExpressionNode { 38 public final class SLFunctionLiteralNode extends SLExpressionNode {
32 39
33 private final SLFunction value; 40 private final SLFunction value;
34 41