src/jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker.java

Print this page

        

*** 35,47 **** import jdk.internal.dynalink.linker.GuardingTypeConverterFactory; import jdk.internal.dynalink.linker.LinkRequest; import jdk.internal.dynalink.linker.LinkerServices; import jdk.internal.dynalink.linker.TypeBasedGuardingDynamicLinker; import jdk.internal.dynalink.support.TypeUtilities; import jdk.nashorn.internal.runtime.ConsString; import jdk.nashorn.internal.runtime.Context; - import jdk.nashorn.internal.runtime.GlobalObject; /** * Internal linker for String, Boolean, and Number objects, only ever used by Nashorn engine and not exposed to other * engines. It is used for treatment of strings, boolean, and numbers as JavaScript primitives. Also provides ECMAScript * primitive type conversions for these types when linking to Java methods. --- 35,47 ---- import jdk.internal.dynalink.linker.GuardingTypeConverterFactory; import jdk.internal.dynalink.linker.LinkRequest; import jdk.internal.dynalink.linker.LinkerServices; import jdk.internal.dynalink.linker.TypeBasedGuardingDynamicLinker; import jdk.internal.dynalink.support.TypeUtilities; + import jdk.nashorn.internal.objects.Global; import jdk.nashorn.internal.runtime.ConsString; import jdk.nashorn.internal.runtime.Context; /** * Internal linker for String, Boolean, and Number objects, only ever used by Nashorn engine and not exposed to other * engines. It is used for treatment of strings, boolean, and numbers as JavaScript primitives. Also provides ECMAScript * primitive type conversions for these types when linking to Java methods.
*** 60,70 **** public GuardedInvocation getGuardedInvocation(final LinkRequest origRequest, final LinkerServices linkerServices) throws Exception { final LinkRequest request = origRequest.withoutRuntimeContext(); // Nashorn has no runtime context final Object self = request.getReceiver(); ! final GlobalObject global = (GlobalObject) Context.getGlobal(); final NashornCallSiteDescriptor desc = (NashornCallSiteDescriptor) request.getCallSiteDescriptor(); return Bootstrap.asType(global.primitiveLookup(request, self), linkerServices, desc); } --- 60,70 ---- public GuardedInvocation getGuardedInvocation(final LinkRequest origRequest, final LinkerServices linkerServices) throws Exception { final LinkRequest request = origRequest.withoutRuntimeContext(); // Nashorn has no runtime context final Object self = request.getReceiver(); ! final Global global = Context.getGlobal(); final NashornCallSiteDescriptor desc = (NashornCallSiteDescriptor) request.getCallSiteDescriptor(); return Bootstrap.asType(global.primitiveLookup(request, self), linkerServices, desc); }