- All Superinterfaces:
- com.oracle.truffle.api.nodes.NodeInterface
- All Known Implementing Classes:
- DebugBuiltins.DebugNeverPartOfCompilationNode, StringPrototypeBuiltins.JSStringCharAtNode, StringPrototypeBuiltins.JSStringCharAtNode.Inlined, StringPrototypeBuiltins.JSStringCharCodeAtNode, StringPrototypeBuiltins.JSStringCharCodeAtNode.Inlined, StringPrototypeBuiltins.JSStringSubstringNode, StringPrototypeBuiltins.JSStringSubstringNode.Inlined
- Enclosing class:
- JSBuiltinNode
public static interface JSBuiltinNode.Inlineable
extends com.oracle.truffle.api.nodes.NodeInterface
Interface for trivial built-in nodes that can be inlined without going through a call.
The built-in function must not make any calls and must not throw an error (note that argument
conversions and side-effecting accesses could make calls or throw errors); otherwise it could
be observed that no actual call was made. The inlined node must check these preconditions to
ensure it is safe to do an inline execution or throw RewriteToCallException
.