public abstract class GetFromThreadLocalNode extends RubyNode
ThreadLocal
, get the value from it. If the value is not a ThreadLocal
,
return it unmodified.
This is used in combination with nodes that read and writes from storage locations such as frames to make them
thread-local.
Also see WrapInThreadLocalNode
.Constructor and Description |
---|
GetFromThreadLocalNode(GetFromThreadLocalNode prev) |
GetFromThreadLocalNode(RubyContext context,
com.oracle.truffle.api.source.SourceSection sourceSection) |
Modifier and Type | Method and Description |
---|---|
Object |
get(Object value) |
static Object |
get(RubyContext context,
Object value) |
Object |
get(ThreadLocal<?> threadLocal) |
bignum, bignum, bignum, execute, executeArray, executeBignum, executeBoolean, executeFloat, executeIntegerFixnum, executeIntegerFixnumRange, executeLongFixnum, executeLongFixnumRange, executeObjectArray, executeObjectRange, executeRubyBasicObject, executeRubyBinding, executeRubyClass, executeRubyEncoding, executeRubyEncodingConverter, executeRubyException, executeRubyFiber, executeRubyFile, executeRubyHash, executeRubyMatchData, executeRubyMethod, executeRubyModule, executeRubyNilClass, executeRubyProc, executeRubyRange, executeRubyRegexp, executeRubyString, executeRubySymbol, executeRubyThread, executeRubyTime, executeRubyUnboundMethod, executeString, executeUndefinedPlaceholder, executeVoid, getContext, getNonProxyNode, getNonWrapperNode, isBoolean, isDefined, isDispatchAction, isDouble, isInteger, isIntegerFixnumRange, isLexicalScope, isLong, isLongFixnumRange, isObjectArray, isObjectRange, isRational, isRubyArray, isRubyBasicObject, isRubyBignum, isRubyBinding, isRubyClass, isRubyEncoding, isRubyEncodingConverter, isRubyException, isRubyFiber, isRubyFile, isRubyHash, isRubyMatchData, isRubyModule, isRubyNilClass, isRubyNilObject, isRubyProc, isRubyRange, isRubyRegexp, isRubyString, isRubySymbol, isRubyThread, isRubyTime, isString, isThreadLocal, isTrue, isUndefinedPlaceholder, notDesignedForCompilation, probe, probeLite
accept, adoptChildren, assignSourceSection, atomic, atomic, clearSourceSection, clone, copy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLanguage, getParent, getRootNode, getSourceSection, insert, insert, isReplaceable, onAdopt, onReplace, replace, replace, toString
public GetFromThreadLocalNode(RubyContext context, com.oracle.truffle.api.source.SourceSection sourceSection)
public GetFromThreadLocalNode(GetFromThreadLocalNode prev)
public Object get(ThreadLocal<?> threadLocal)
public static Object get(RubyContext context, Object value)
Copyright © 2001-2015 JRuby. All Rights Reserved.