Edit C:\Program Files\Java\jre8\lib\ext\jdk\nashorn\internal\runtime\linker\NashornPrimitiveLinker.class
Êþº¾ 3 ? , ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? , ? ? ? , ¡ ¢ £ ¤ ¥ ¦ § , ¨ e © e ª « 4 ¬ , ® ¯ ° e ± ¯ ² ¯ ³ ´ µ ´ ¶ · ¸ ¹ º » ¼ ½ ¼ ¾ ¿ À ¹ Á  v ? à , Ä Å Æ Ç VOID_TO_OBJECT 4Ljdk/internal/dynalink/linker/GuardedTypeConversion; GUARD_PRIMITIVE Ljava/lang/invoke/MethodHandle; <init> ()V Code LineNumberTable LocalVariableTable this <Ljdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker; canLinkType (Ljava/lang/Class;)Z type Ljava/lang/Class; LocalVariableTypeTable Ljava/lang/Class<*>; Signature (Ljava/lang/Class<*>;)Z canLinkTypeStatic StackMapTable getGuardedInvocation ?(Ljdk/internal/dynalink/linker/LinkRequest;Ljdk/internal/dynalink/linker/LinkerServices;)Ljdk/internal/dynalink/linker/GuardedInvocation; origRequest *Ljdk/internal/dynalink/linker/LinkRequest; linkerServices -Ljdk/internal/dynalink/linker/LinkerServices; request self Ljava/lang/Object; desc ?Ljdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor; Exceptions È convertToType X(Ljava/lang/Class;Ljava/lang/Class;)Ljdk/internal/dynalink/linker/GuardedTypeConversion; sourceType targetType mh É » à ^(Ljava/lang/Class<*>;Ljava/lang/Class<*>;)Ljdk/internal/dynalink/linker/GuardedTypeConversion; compareConversion Ê Comparison InnerClasses s(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)Ljdk/internal/dynalink/linker/ConversionComparator$Comparison; primitiveType1 primitiveType2 targetType1 targetType2 wrapper1 wrapper2 |(Ljava/lang/Class<*>;Ljava/lang/Class<*>;Ljava/lang/Class<*>;)Ljdk/internal/dynalink/linker/ConversionComparator$Comparison; getPrimitiveTypeOrSelf $(Ljava/lang/Class;)Ljava/lang/Class; primitive *(Ljava/lang/Class<*>;)Ljava/lang/Class<*>; getWrapperTypeOrSelf wrapper isJavaScriptPrimitive (Ljava/lang/Object;)Z o findOwnMH V(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; name Ljava/lang/String; rtype types [Ljava/lang/Class; [Ljava/lang/Class<*>; \(Ljava/lang/String;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;)Ljava/lang/invoke/MethodHandle; <clinit> SourceFile NashornPrimitiveLinker.java = > L E java/lang/String java/lang/Boolean 'jdk/nashorn/internal/runtime/ConsString java/lang/Integer java/lang/Double java/lang/Float java/lang/Short java/lang/Byte Ë Ì Í Î Ï Ð Ñ =jdk/nashorn/internal/runtime/linker/NashornCallSiteDescriptor Ò Ó Ô Õ Ö × Ø Ù Ú java/lang/Object Û Ü G 9 : 2jdk/internal/dynalink/linker/GuardedTypeConversion .jdk/internal/dynalink/linker/GuardedInvocation ; < = Ý É F Þ ß à á â ã = ä t q å æ ç æ java/lang/Number è E java/lang/Character p q é ê ë ì æ í q î q ï ð w ñ w ò ó ô õ ö ù :jdk/nashorn/internal/runtime/linker/NashornPrimitiveLinker ú F û ü ý þ ÿ = java/lang/Class y z ;jdk/internal/dynalink/linker/TypeBasedGuardingDynamicLinker 9jdk/internal/dynalink/linker/GuardingTypeConverterFactory 1jdk/internal/dynalink/linker/ConversionComparator java/lang/Exception java/lang/invoke/MethodHandle <jdk/internal/dynalink/linker/ConversionComparator$Comparison (jdk/internal/dynalink/linker/LinkRequest withoutRuntimeContext ,()Ljdk/internal/dynalink/linker/LinkRequest; getReceiver ()Ljava/lang/Object; getCallSiteDescriptor ,()Ljdk/internal/dynalink/CallSiteDescriptor; #jdk/nashorn/internal/objects/Global primitiveLookup n(Ljdk/internal/dynalink/linker/LinkRequest;Ljava/lang/Object;)Ljdk/internal/dynalink/linker/GuardedInvocation; -jdk/nashorn/internal/runtime/linker/Bootstrap asTypeSafeReturn ¹(Ljdk/internal/dynalink/linker/GuardedInvocation;Ljdk/internal/dynalink/linker/LinkerServices;Ljdk/internal/dynalink/CallSiteDescriptor;)Ljdk/internal/dynalink/linker/GuardedInvocation; :jdk/nashorn/internal/runtime/linker/JavaArgumentConverters getConverter 2(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; java/lang/Void TYPE A(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V ()Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType changeParameterType 1(ILjava/lang/Class;)Ljava/lang/invoke/MethodType; asType O(Ljava/lang/invoke/MethodType;)Ljdk/internal/dynalink/linker/GuardedInvocation; 4(Ljdk/internal/dynalink/linker/GuardedInvocation;Z)V TYPE_1_BETTER >Ljdk/internal/dynalink/linker/ConversionComparator$Comparison; TYPE_2_BETTER isAssignableFrom +jdk/internal/dynalink/support/TypeUtilities isMethodInvocationConvertible %(Ljava/lang/Class;Ljava/lang/Class;)Z INDETERMINATE getPrimitiveType getWrapperType #jdk/nashorn/internal/runtime/JSType isString isNumber "jdk/nashorn/internal/lookup/Lookup MH 7Ljdk/nashorn/internal/lookup/MethodHandleFunctionality; java/lang/invoke/MethodHandles lookup Lookup )()Ljava/lang/invoke/MethodHandles$Lookup; 5jdk/nashorn/internal/lookup/MethodHandleFunctionality B(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; findStatic ?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; *jdk/nashorn/internal/runtime/ScriptRuntime UNDEFINED (Ljdk/nashorn/internal/runtime/Undefined; constant D(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; "(Ljava/lang/invoke/MethodHandle;)V %java/lang/invoke/MethodHandles$Lookup 0 , 6 7 8 9 : ; <